Tam bir başlanğıc üçün rəhbərlik.
(Qeyd: bu müəllifin tövsiyələridir, lakin faydalı görünür. Şərhlərdə əlavə edin.)

Bir ay çox vaxtdır. Hər gün 6-7 saat öyrənməyə sərf etsəniz, çox şey əldə edə bilərsiniz.
Ay üçün hədəf:
- Əsas anlayışlarla tanış olun (dəyişən, şərt, siyahı, dövr, funksiya)
- Proqramlaşdırma üzrə 30-dan çox problem ilə praktiki məşğul olmaq
- Yeni bilikləri tətbiq etmək üçün iki layihə hazırlamaq
- Ən azı iki çərçivə ilə tanış olmaq
- IDE (inkişaf mühiti), Github, hosting, xidmətlər və s. ilə işə başlamaq.
Beləliklə, siz Python junior inkişafçısı olacaqsınız.
İndi həftələr üzrə plan.
Məqalə EDISON Software şirkətinin dəstəyi ilə tərcümə edilmişdir, , eləcə də .
Birinci həftə: Python ilə tanış olun
Python-da hər şeyin necə işlədiyini başa düşün. Mümkün qədər çox şeyi yoxlayın.
- Gün 1: 4 əsas konsept (4 saat): giriş, çıxış, dəyişən, şərtlər
- Gün 2: 4 əsas konsept (5 saat): siyahı, for dövrü, while dövrü, funksiya, modulları idxal etmək
- Gün 3: Proqramlaşdırmanın sadə problemləri (5 saat): iki dəyişəni yerini dəyişdirmək, Celsius dərəcələrini Fahrenheit dərəcələrinə çevirmək, bir ədədin bütün rəqəmlərinin cəmini hesablamaq, bir ədədin sadə olub olmadığını yoxlamaq, təsadüfi ədəd yaratmaq, siyahıdan təkrarlananları silmək
- Gün 4: Orta çətinlikdə proqramlaşdırma problemləri (6 saat): bir sətiri yaxına köçürmək (palindromu yoxlamaq), ən böyük ortaq böləni hesablamaq, iki sıralaşmış array-i birləşdirmək, ədədləri təxmin etmə oyunu yazmaq, yaş qeyd etmək və s.
- Gün 5: Məlumat strukturları (6 saat): yığın, növbə, lüğət, tuple-lar, bağlı siyahı
- Gün 6: OOP — Objektyönlü proqramlaşdırma (6 saat): obyekt, sinif, metod və konstruktordan, OOP irsi
- Gün 7: Alqoritm (6 saat): axtarış (xətləri və ikili), sıralama (baloncuk metodu, seçmə), rekurziv funksiya (faktorial, Fibonacci seriyası), alqoritmlərin vaxt mürəkkəbliyi (xətli, kvadrat, sabit)
Python-u quraşdıra bilməzsiniz:
Mən başa düşürəm, bunun ziddiyyətli olduğu görünür. Amma mənə inanın. Bir çox insan var ki, onlar inkişaf mühitini və ya proqramı qura bilmədikdə öyrənmək arzusunu itirirlər. Mən məsləhət görürəm ki, bir anda mobil tətbiqə daxil olun, məsələn, və ya saytına keçin və dili araşdırmağa başlayın. Əgər texniki bilikləriniz azdırsa, ilk növbədə Python-u quraşdırmağı hədəfləməyin.
İkinci həftə: proqram təminatını yaradmağa başlayın (layihə hazırlayın)
Proqram təminatı inkişafı sahəsində təcrübə qazanın. Öyrəndiklərinizdən istifadə edərək, real bir layihə yaradın.
- Gün 1: İnkişaf mühiti ilə tanış olun (5 saat): İdarəetmə mühiti, ən böyük layihələr üçün kod yazacağınız interaktiv bir mühitdir. Ən azı bir idarəetmə mühitini yaxşı bilməlisiniz. Mən %price% ilə başlamağı tövsiyə edirəm və ya Jupyter notebook
- Gün 2: Github (6 saat): Öyrənin , bir depo yaradın. Kodunuzu commit edin, push edin, iki istənilən Git ağacı arasındakı fərqi hesablayın. Həmçinin, branching, merging və pull requestlərlə bağlı başa düşün.
- Gün 3: İlk layihə: Sadə Kalkulyator (4 saat): Tkinter ilə tanış olun. .
- Gün 4, 5, 6: Şəxsi layihə (hər gün 5 saat): Layihələrdən birini seçin və onun üzərində işləməyə başlayın. Layihə üçün ideyalarınız yoxdursa, bu siyahıya baxın:
- Gün 7: Hosting (5 saat): Server və hosting ilə başa düşün ki, . Heroku-nu qurun və tətbiqinizin versiyasını yerləşdirin.
Niyə layihə:
Sadəcə dərsdə və ya videoda addımları izləyərək düşünmə bacarığınızı inkişaf etdirə bilməzsiniz. Bilgilerinizi bir layihədə tətbiq etməlisiniz. Bir cavabı tapmaq üçün bütün gücünüzü sərf edəndə, onu yadda saxlayacaqsınız.
Üçüncü həftə: Proqramçı kimi özünüzü inkişaf etdirin
Hədəfiniz üçüncü həftədə proqram təminatının inkişaf prosesi haqqında ümumi bir anlayış əldə etməkdir. Bacarıqlarınızı inkişaf etdirmiş olsanız belə, bəzi əsas bilikləri bilməlisiniz, çünki bunlar gündəlik işinizi təsir edə bilər.
- Gün 1: Verilənlər bazalarının əsasları (6 saat): Əsas SQL sorğusu (Cədvəl yaradılması, Seçim, Harada, Yeniləmə), SQL Funksiyası (Ortalama, Maksimum, Say), əlaqəli verilənlər bazası (Normalizasiya), Daxili birləşmə, Xarici birləşmə və s.
- Gün 2: Python-da verilənlər bazalarından istifadə edin (5 saat): Verilənlər bazası çərçivəsini (SQLite və ya Pandas) istifadə edin, verilənlər bazasına qoşulun, bir neçə cədvəldə məlumat yaradın və əlavə edin, cədvəl məlumatlarını oxuyun
- Gün 3: API (5 saat): API çağırmağı öyrənin, JSON-u öyrənin, mikroservislər, REST API ilə tanış olun
- Gün 4: Numpy (4 saat): və onun istifadəsində praktika edərək
- Gün 5, 6: Portfel veb-saytı (hər gün 5 saat): Django öyrənin, , həmçinin Flask çərçivəsinə nəzər salın
- Gün 7: Unit testləri, jurnallar, debug (4 saat): Unit testləri (PyTest) ilə məşğul olun, jurnallarla necə işləməyi öyrənin və onları yoxlayın, breakpoin-ləri istifadə edin
Vaxtın real ölçüsü (Sirr):
Əgər bu mətləbə dərin maraqlısınızsa və ona özünüzü tam həsr etsəniz, bir ay ərzində hər şeyi edə biləcəksiniz.
- Hər zaman Python öyrənin. Səhər 8-də başlayın və axşam 5-ə qədər bununla məşğul olun. Yemək və qəlyanaltılar üçün bir saatlıq fasilə verin.
- Səhər 8-də bu gün öyrənəcəyiniz şeylərin siyahısını hazırlayın. Daha sonra, dünən öyrəndiklərinizi xatırlamaq və tətbiq etmək üçün bir saat ayırın.
- Səhər 9-dan günortaya qədər daha az öyrənib praktika edin. Günortadan sonra daha aktiv olun. Hər hansı bir problemə ilişsəniz, onun həllini internetdə axtarın.
- Hər gün 4-5 saat öyrənməyə, 2-3 saat praktika etməyə vaxt ayırın. ( həftədə maksimum bir istirahət günü verə bilərsiniz)
- Dostlarınız sizi dəli sayacaq. Onları hayal qırıklığına uğratmayın — obrazınıza uyğun olun.
Əgər tam vaxt işləysəniz və ya universitetdə oxuyursunuzsa, daha çox vaxta ehtiyacınız olacaq. Mən şagird olanda siyahıdakı hər şeyi etmək üçün 8 ay vaxtım aldı. İndi baş proqramçı (senior) kimi çalışıram. ABŞ-ın mərkəzi bankında çalışan həyat yoldaşıma bütün vəzifələri tamamlamak üçün 6 ay lazım oldu. Təxminən nə qədər vaxt lazım olduğunu əhəmiyyət kəsb etmir. Siyahını tamamlayın.
Dördüncü həftə: işə qəbul olunmasına ciddi yanaşın (təcrübəçi)
Dördüncü həftənin məqsədi, iş tapmağa ciddi düşünməkdir. İndi iş tapmaq istəməsəniz belə, müsahibə prosesində çox şey öyrənəcəksiniz.
- 1-ci Gün: Rezume (5 saat): Tək səhifəlik bir rezume yaradın. Rezumenin yuxarı hissəsində bacarıqlarınız haqqında qısa məlumat verin. Mütləq Github-da bağlantılar daxil edərək layihələrinizi siyahıya alın.
- 2-ci Gün: Veb portfel (6 saat): Bir neçə blog yazın. Onları əvvəlki portfelinizə əlavə edin.
- 3-cü Gün: LinkedIn profili (4 saat): LinkedIn profilini yaradın. Rezumenizdə olan hər şeyi LinkedIn-ə köçürün.
- 4-cü Gün: Müsahibəyə hazırlanma (7 saat): Müsahibələrdə ən çox verilən sualları Google-da axtarın. Müsahibələrdə soruşulan 10 proqramlaşdırma problemində həll etməyi məşq edin. Bunu kağız üzərində edin. Müsahibə suallarını Glassdoor, Careercup kimi veb saytlarında tapa bilərsiniz.
- 5-ci Gün: Şəbəkələşmə (~ saat): Kofanızdan çıxın. Mütəxəssislər görüşlərinə, iş sərgilərinə qatılmağa başlayın. Rekruterlərlə və digər proqramçılarla tanış olun.
- 6-cı Gün: İşlərin elanına müraciət edin (~ saat): “Python işi” axtarın, LinkedIn-də və yerli iş təklifləri saytlarında hansı elanlar olduğunu görün. Üç iş elanı seçin, onlara müraciət edin. Rezumenizi hər birinə uyğunlaşdırın. Tələblər siyahısında bilmədiyiniz 2-3 şeyi tapın. Növbəti 3-4 günü bunları öyrənməyə sərf edin.
- 7-ci Gün: Redd edilmələrdən öyrənin (~ saat): Redd etdiyiniz hər dəfə, iş əldə etmək üçün öyrənməli olduğunuz 2 şeyi müəyyən edin. Sonra bu suallar üzrə ustalığınızı artırmaq üçün 4-5 gün sərf edin. Beləcə, hər bir rədd cavabından sonra daha yaxşı proqramçı olacaqsınız.
İşə hazır vəziyyət:
Gerçək budur ki, siz heç vaxt 100% işə hazır olmayacaqsınız. Yalnız 1-2 şeyi mükəmməl öyrənməlisiniz. Və müsahibələrdə maneələri aşmaq üçün digər məsələlərlə tanış olmalısınız. İşə başlayanda çox şey öyrənəcəksiniz.
Prosesdən zövq alın:
Təhsil bir prosesdir. Yolunuzda mütləq çətinliklər olacaq. Çətinliklər nə qədər çox olarsa, siz bir o qədər yaxşı inkişaf edəcəksiniz.
Əgər 28 gün ərzində siyahını tamamlayıbsa, siz mükəmməl iş görmüsünüz. Amma siyahının 60-70%-ni tamamlayırsınızsa, zəruri keyfiyyət və bacarıqları inkişaf etdirəcəksiniz. Bunlar sizi proqramçı edəcək.
Harada öyrənmək:
Hələ də nədən başlamaq bilməsəniz,
- (Python öyrənmək üçün maraqlı Android tətbiqi)
- (Veb versiyasında öyrənmək üçün pulsuz resurslar)
- (videoları izləyin və öyrənin)
Sizə maraqlı bir səfər arzulayıram. Gələcək əlinizdədir.
Tərcümə: Diana Şeremyova
Mənbə: habr.com
