JavaRush /Java blogi /Random-UZ /Java dasturchining nazorat ro'yxati. Ishlab chiquvchi nim...

Java dasturchining nazorat ro'yxati. Ishlab chiquvchi nimani bilishi kerak

Guruhda nashr etilgan
Salom! Bugun biz Java dasturchisining rivojlanish yo'li va talabga ega bo'lish uchun nimani bilishi kerakligi haqida gaplashamiz. Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 1Suhbatdagi har qanday ishlab chiquvchi lavozimga nomzodni "muvaffaqiyatsiz" qilishi mumkin. Masalan, u joriy loyihada duch kelgan muayyan mavzular haqida savollar berishni boshlaydi. Lekin hamma narsani bilmaslik yaxshi. Ayrim savollarga javob bermasligingiz ham normal holat. Umuman olganda, har bir Java dasturchisi rivojlanish bo'yicha asosiy bilimga ega bo'lishi kerak. Keling, qanday texnologiyalar "asosiy" deb hisoblanishini ko'rib chiqaylik.

1. Asosiy algoritmlar

Dasturlashni o'rganishni boshlaganingizda birinchi bo'lib (bu nafaqat Java-ga taalluqlidir) bu asoslarni tahlil qilishdir. Masalan, algoritmlar. Ularning cheksiz soni bor va iloji boricha ko'proq algoritmlarni o'rganish uchun yillarni sarflamasligingiz kerak: ularning aksariyati siz uchun foydali bo'lmaydi. Kerakli minimal bilimlarni " Grocking Algoritms " kitobidan olish mumkin . Bu sayohatni boshlash uchun etarli bo'ladi, lekin agar xohlasangiz, Robert Sedgwick va Kevin Ueynning " Tuzilmalar va algoritmlar " yoki "Java'da algoritmlar" kitobi yordamida o'rganishingiz mumkin. Shuningdek, men sizga informatika asoslari bo'yicha bilimingizni oshirishni maslahat beraman. Buni JavaRush da CS50 kursi yordamida amalga oshirish mumkin .

2. Java sintaksisi

Algoritmlar asoslarini o'rganganimizdan so'ng, biz Java sintaksisini o'rganishimiz kerak. Axir, biz hammamiz bu erda Java dasturchisi bo'lishni o'rganyapmiz, shunday emasmi? Buning uchun JavaRush kursi juda mos keladi. Ko'p vazifalarni bajarish jarayonida siz Java sintaksisini yaxshi bilasiz va Java kodini o'ylamasdan yozasiz/o'qiysiz, go'yo u o'z ona tilingiz kabi. JavaRush - bu amaliyot va unga qo'shimcha ravishda siz aynan nima qilayotganingizni tushunish uchun nazariyani ham ko'rib chiqishingiz kerak. Buning uchun siz kitoblarni o'qishingiz mumkin, masalan, quyidagilardan birini:
  • Birinchi Java-ni boshla ”;
  • Barri Birdning "Java for Dummies";
  • “Java. Yangi boshlanuvchilar uchun qo'llanma" Gerbert Shildt.
Ushbu kitoblarni o'qib chiqqandan so'ng, siz qiyinroq kitoblarni olishingiz mumkin:
  • “Java falsafasi”, Bryus Ekkel;
  • “Samarali dasturlash”, Joshua Bloch;
  • “Java. To'liq qo'llanma", Gerbert Shildt.
Oxirgi uchta kitob yangi boshlanuvchilar uchun o'qish oson emas, lekin ular Java nazariyasiga mustahkam asos berishi mumkin. Bundan tashqari, JavaRush-dagi maqolalar haqida unutmang, chunki ular sizni qiziqtirgan ko'plab mavzular bo'yicha tushuntirishlarni topishlari mumkin. Siz o'zingizga qiziq bo'lgan mavzuni kiritish orqali kerakli maqolani topishingiz mumkin: Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 2Men ham Java bo'yicha intervyu savollarini, masalan, mavhum sinflar va interfeyslarga oid savollar to'plamida qidirishni tavsiya qilaman . Bu sizga aniq nimani o'rganishingiz kerakligini va qanday savollarga tayyorlanishingizni tushunishga yordam beradi.Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 3

3. Dasturlash naqshlari

Dasturlash naqshlari - bu tez-tez uchraydigan kontekstda muammoni hal qilishni ifodalovchi takrorlanadigan naqshlar. Ular orasida har bir o'zini hurmat qiladigan dasturchi bilishi kerak bo'lgan asosiy, oddiy andozalar mavjud. Ushbu mavzuni tushunish uchun " Birinchi bosh. " kitobidan foydalaning . Dizayn naqshlari ." U asosiy dasturlash naqshlarini aniq tushuntiradi. Ammo kitob Java haqida ko'p gapiradi , shuning uchun kitobni o'rganish paytida siz ushbu dasturlash tilini o'zlashtirishingiz kerak. Naqshlarni chuqurroq o'rganish uchun siz "Ob'ektga yo'naltirilgan dizayn texnikasi" ni ham o'qishingiz mumkin. To'rtlik to'dasidan dizayn naqshlari (To'rtlik to'dasi: Erich Gamma, Richard Helm, Ralf Jonson, Jon Vlissidesni o'z ichiga olgan mualliflar jamoasi - muharrir eslatmasi) . Ushbu mavzuni o'rganganingizdan so'ng, siz kodingizning deyarli hamma joyida naqshlarni ko'rishni boshlaysiz. Bunga e'tibor bering, ayniqsa, bahorda ishlatiladigan naqshlar , chunki bu intervyularda mashhur savol.

4. Dasturlash paradigmalari. Kod tozaligi

Standart dasturlash naqshlaridan tashqari, siz bilishingiz kerak bo'lgan turli xil printsiplar va paradigmalar mavjud ( SOLID , GRASP ). Shuningdek, kodning toza va o'qilishi mumkinligini ta'minlash kerak. Ushbu mavzu bo'yicha bilishingiz kerak bo'lgan hamma narsa Robert Martinning " Toza kod " kitobida yoki Stiv MakKonnellning "Perfect Code" kitobini sinab ko'ring.

5.SQL

Bizning keyingi qadamimiz relyatsion ma'lumotlar bazalari tilini o'rganishdir - SQL . Ma'lumotlar bazalari - bu veb-ilovaning ma'lumotlari (ma'lumotlari) saqlanadigan joy. Ma'lumotlar bazasi ko'plab jadvallardan iborat (telefoningizdagi manzillar kitobi bunday jadvallarning eng oddiy namunasidir). Ma'lumotlar bazalari haqida ko'proq ma'lumotni ushbu maqolada o'qishingiz mumkin . Java ishlab chiquvchilari uchun mas'uliyat sohasi nafaqat Java ilovasi, balki u o'zaro aloqada bo'lgan va ma'lumotlarni saqlaydigan ma'lumotlar bazasidir. Relyatsion (eng keng tarqalgan) ma'lumotlar bazalarida barcha o'zaro ta'sir maxsus til - Structured Query Language yoki SQL orqali amalga oshiriladi. Ushbu mavzuni tushunish uchun kitoblardan birini o'qish kifoya qiladi:
  • Alan Bewley tomonidan "SQL o'rganish";
  • "SQL", Chris Fiaily;
  • Lin Beyli tomonidan "Head First SQL".
Ammo nazariyasiz amaliyot ishlamaydi, shunday emasmi? Va SQL bilimini sinab ko'rish uchun intervyularda ular ko'pincha (deyarli har doim) SQL so'rovini yozishda bir yoki ikkita muammo beradi. Shuning uchun, o'zingizni yaxshi nurda ko'rsatish uchun amaliy SQL ko'nikmalaringizni keskinlashtirish juda muhimdir. SQL amaliyotiga ega bo'lish uchun ajoyib manba sql-ex.ru resursi bo'lishi mumkin .

6. MySQL/PostgreSQL

SQL tilini o'rganganingizdan so'ng, siz ma'lumotlar bazasini amalga oshirish bilan tanishishingiz kerak. Ma'lumotlar bazasiga qarab, ba'zi buyruqlar keskin farq qilishi mumkin. Va ma'lumotlar bazasi imkoniyatlaridagi farq juda sezilarli. Eng keng tarqalgan relyatsion ma'lumotlar bazalari MySQL va PostgreSQL hisoblanadi . Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 4MySQL ancha sodda, ammo PostgreSQL ko'proq imkoniyatlarga ega. Boshlash uchun ulardan kamida bittasi bilan tanishish kifoya. Agar siz Googling ko'nikmalaridan foydalansangiz, ma'lumotlar bazasini qo'llashni o'rganishingiz mumkin - Youtube-da kerakli maqolalar va qo'llanmalarni toping. Sizni qiziqtirgan savollarni to'g'ri qidirishni yaxshi bilishingiz kerak , chunki dasturchi Google qidiruvlarida "qora kamarli" odamdir.

7. Maven/Gradle

Siz Gradle yoki Maven ramkalaridan birini o'rganishingiz kerak , ular loyihalarni yig'ish uchun mo'ljallangan, chunki hozir siz uchun Java nafaqat bir nechta sinflarning vazifalari, balki to'liq huquqli ilovalarni yozish uchun tildir. Loyihani qanday yig'ish kerakligini, qanday yig'ish bosqichlarini, kerakli tashqi kutubxonalarni tayyor kod bilan qanday yuklashni va boshqa ko'p narsalarni tushunishingiz kerak. Gradle yangiroq va qisqaroq bo'lsa ham, Maven ko'p hollarda ishlatiladi. Shuning uchun, uning yig'ish hayot aylanishiga alohida e'tibor bering.

8. Git

Git taqsimlangan versiya boshqaruv tizimidir. Ushbu texnologiya ishlab chiquvchilarga bir-biriga aralashmasdan birgalikda bitta dastur yaratish imkonini beradi. Albatta, ushbu versiyani boshqarish tizimining analoglari mavjud. Masalan, Subversion . Lekin asosan Git ishlatiladi va siz u bilan ishlash imkoniyatiga ega bo'lishingiz kerak. Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 5Undagi ta'lim maqolalaridan tashqari, Youtube-da ushbu texnologiyani bosqichma-bosqich o'zlashtirishga yordam beradigan etarlicha videolar mavjud. Dastlab, interfeysni amalga oshirishning bir turi emas, balki Git konsolidan foydalanish yaxshiroqdir, chunki unda siz hamma narsani buyruqlar orqali qilishingiz kerak bo'ladi. Suhbat davomida odamlar ko'pincha ba'zi Git buyruqlarini so'rashadi , shuning uchun men ularni yozib qo'yishingizni va ularni qulay joyda saqlashingizni maslahat beraman. Shuningdek, men sizga eng muhim fikrlarni yozib qo'yishingizni maslahat beraman, shunda suhbatdan oldin uni ko'rib chiqishingiz va xotirangizni yangilashingiz mumkin.

9. JDBC

Ushbu texnologiya Java ilovangiz va relyatsion ma'lumotlar bazasi o'rtasida ulanishni ta'minlash uchun mo'ljallangan. Asoslar bilan tanishish uchun men JDBC yoki Hammasi qaerdan boshlanadi maqolasini o'qishni tavsiya qilaman. JDBC texnologiyasini tushuntiruvchi va oddiy misollar keltiruvchi ko'plab maqolalar mavjud, garchi endi hech kim yalang'och JDBC dan to'g'ridan-to'g'ri foydalanmaydi.

10.JPA. Kutish rejimi

JPA xuddi JDBC kabi Java ilovasi va ma'lumotlar bazasi o'rtasida aloqa o'rnatish usulidir. Shu bilan birga, JPA yuqori darajadagi texnologiya va shunga mos ravishda foydalanish osonroq. Ammo JPA - bu amalga oshirilmaydigan va muayyan amalga oshirishni talab qiladigan spetsifikatsiya (kontseptsiya). Bunday ilovalar juda ko'p, ammo JPA ideallariga eng yaqin bo'lgan, mashhur va ishlab chiqilgani Hibernate hisoblanadi . Rivojlanish karerangizda siz ushbu texnologiyaga bir necha marta duch kelasiz. Shuning uchun, ushbu texnologiya bilan maqolalar orqali tanishishdan tashqari, bu haqda kitob o'qishni ko'rib chiqishga arziydi, masalan, " Java Persistence API ".

11.Bahor

Java dasturchisi bo'lganingizda, Spring endi siz uchun shunchaki so'z emas. Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 6Endi bu ramka Java tilining sintaksisini bilish zarurati bilan birinchi o'rinni egallaydi. Aytish mumkinki, Spring o'z hamkasbiga ega, ya'ni Java EE texnologiyalari. Ammo Java EE eskirgan va endi yangi loyihalarda ishlatilmaydi. Hozirda Java dasturchilarining katta qismi Java Spring dasturchilaridir, shuning uchun ba'zi asosiy Spring texnologiyalarini bilish majburiydir. Bahor shunchaki ramka emas, balki butun ramkalar platformasi: Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 7Va bu Bahor taqdim etadigan ramkalarning faqat bir qismidir. Yangi boshlanuvchilar uchun ulardan faqat bir nechtasini bilish kifoya:

  • Bahor yadrosi

Bahor nima ekanligini tushunish uchun birinchi o'rinda bo'lishi kerak: bahor konteyneri, loviya, DI, IoC va boshqalar. Shunday qilib, bahordan foydalanish falsafasini tushuning. Bahor ramkalarini keyingi o'rganish ushbu baza asosida amalga oshiriladi. O'zingizning kichik dasturingizni yaratishga arzigulik bo'lishi mumkin, unga siz o'rgangan yangi texnologiyalarni asta-sekin qo'shasiz.

  • Bahor JDBC

Avvalroq biz JDBC texnologiyasi haqida ma'lumotlar bazasiga ulanishni yaratish texnologiyasi sifatida gapirgan edik. Umuman olganda, texnologiyadan "yalang'och" foydalanish hozir loyihalarda topilmasligi mumkin, shuning uchun JDBCni o'rganish shart emasdek tuyulishi mumkin. Lekin bunday emas. JDBC-ning yalang'och suyaklariga qarab, siz texnologiyani pastroq darajada ko'rishingiz va uning muammolari va kamchiliklarini tushunishingiz mumkin. Spring JDBC-ni o'rganishni boshlaganingizdan so'ng, ushbu ramka aynan nimani yaxshilashini, optimallashtirishini va bizning ko'zimizdan yashirishini tushunasiz.

  • Bahor uyqusi

JDBC-da bo'lgani kabi, bu ramka mavjud texnologiyadan foydalanishni yaxshilaydi, bu holda Hibernate. Agar siz bahorsiz Hibernate-dan foydalanishni o'ylab ko'rsangiz, Spring Hibernate-dan foydalanishning qanday foydasi borligini aniq tushunasiz.

  • Bahor JPA

Ilgari biz JPA haqida va qanday qilib bu faqat turli xil ilovalar mavjud bo'lgan spetsifikatsiya haqida gapirgan edik. Ushbu ilovalar orasida Hibernate idealga eng yaqin hisoblanadi. Bahor JPA-ning o'ziga xos ideal dasturiga ega, u "kaput ostida" Hibernate-dan foydalanadi va JPA spetsifikatsiyalari idealiga iloji boricha yaqinroqdir. Ushbu texnologiya Spring JPA deb ataladi. Aytgancha, bu ma'lumotlar bazasiga kirishni sezilarli darajada osonlashtiradi. JPA-ni faqat JDBC, Hibernate, Spring JDBC, Spring Hibernate-ni o'rganmasdan o'rganishingiz mumkin. Ammo bu holda, ma'lumotlar bazasiga ulanish haqidagi bilimingiz juda yuzaki bo'ladi.

  • Bahor MVC

Ushbu texnologiya yordamida biz ilovamizning veb-interfeysini foydalanuvchilarga ko'rsatishimiz va interfeysning ilovaning qolgan qismi bilan aloqa qilishiga imkon berishimiz mumkin. Displey uchun mas'ul bo'lgan ba'zi ilova mavjud bo'lganda ham texnologiya displeysiz ishlashi mumkin va siz RESTful texnologiyasidan foydalangan holda so'rovlar va javoblar yordamida ushbu ilova bilan o'zaro aloqada bo'lasiz. Bahor haqidagi ma'lumotni yaxshiroq tushunish uchun YouTube'dagi maqolalar va ma'ruzalardan tashqari siz bir nechta kitoblarni o'qishingiz mumkin. Menga Uolls Kreygning "Harakatdagi bahor" kitobi juda yoqdi. Afsuski, rus tilida endi faqat uchinchi versiya mavjud bo'lib, u eskirgan deb hisoblanadi. Ingliz tilini yaxshi bilsangiz 6-versiyani o'qishni maslahat beraman. Bahor haqidagi yana bir ajoyib kitob "Professionallar uchun 5-bahor". O'rganish qiyinroq va boshidan oxirigacha o'qishdan ko'ra qo'lingizda bo'lgan Bahor Injiliga o'xshaydi.Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 8

  • Bahorgi etik

Ushbu texnologiya Bahordan foydalanishni sezilarli darajada osonlashtiradi. Men uni ro'yxatning oxiriga bir sababga ko'ra qo'ydim, chunki u "kaput" ostida ko'p narsalarni yashiradi va oddiy Bahor bilan tanish bo'lmagan odam uchun ko'p fikrlar aniq va tushunarsiz bo'lishi mumkin. Birinchidan, Spring ramkalari qanday ishlashini yaxshiroq tushunish uchun siz oddiy Spring-dan, keyin esa Spring Boot-dan foydalanishning barcha yuqori afzalliklaridan foydalanishingiz kerak. Shuningdek, men sizga Spring Security va Spring AOP bilan tanishishingizni maslahat beraman. Ammo yuqoridagi texnologiyalardan farqli o'laroq, bu ikkalasini chuqur bilish hozir kerak emas. Ushbu texnologiya yangi boshlanuvchilar uchun emas. Suhbat davomida o'smirlardan ular haqida so'rashmaydi (bir yuzaki savoldan tashqari). Umuman olganda, ushbu texnologiyalar nima ekanligini va ular qanday ishlashini o'qing. Ushbu maqola davomida men kitob o'qish haqida bir necha bor eslatib o'tdim. Bir tomondan, bu kerak emas. Siz bitta kitob o'qimay, maqolalar va o'quv videolaridan kerakli narsalarni o'rganib, dasturchi bo'lishingiz mumkin. Boshqa tomondan, hozirgi vaqtda yangi boshlanuvchilar uchun talab qilinadigan boshlang'ich bilimlar uchun barni ko'taradigan yangi ishlab chiquvchilar uchun bozorda raqobat yuqori. Shuning uchun, qanchalik ko'p bilsangiz, suhbatdoshingizni bilim darajangiz bilan hayratda qoldirib, birinchi ishingizga tezroq kirishingiz mumkin. Barchangizga rahmat va Java siz bilan bo'lsin .Java dasturchining nazorat ro'yxati.  Ishlab chiquvchi nimani bilishi kerak - 9
Izohlar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION