การพัฒนาเว็บสมัยใหม่
ตลาดการพัฒนาซอฟต์แวร์ของอียิปต์ประสบปัญหาการขาดแคลนผู้เชี่ยวชาญเมื่อเปรียบเทียบกับตลาดต่างประเทศ ในหลักสูตรนี้ เราจะครอบคลุมแนวทางปฏิบัติด้านการพัฒนาซอฟต์แวร์ที่มีความเสถียรล่าสุด สถาปัตยกรรมโครงการ รูปแบบการออกแบบ และเทคโนโลยี ในด้านการพัฒนาเว็บ
หลักสูตรนี้มุ่งเป้าไปที่ผู้ที่ตั้งใจจะประกอบอาชีพด้านการพัฒนาซอฟต์แวร์ หรือต้องการสร้าง MVP ราคาประหยัดสำหรับสตาร์ทอัพ หลังจากหลักสูตรนี้ คุณควรจะคุ้นเคยกับความทันสมัยในปัจจุบัน ซึ่งสามารถตัดสินใจอย่างมีการศึกษาเกี่ยวกับกลุ่มการพัฒนาของคุณได้
โครงสร้างของหลักสูตรนี้ส่วนใหญ่ได้รับแรงบันดาลใจมาจากแนวคิดที่ว่านักพัฒนามือใหม่เริ่มต้นจากการนำเฟรมเวิร์กมาใช้และการใช้ไลบรารีโดยไม่ต้องคิดอย่างมีวิจารณญาณว่าเครื่องมือนี้เหมาะสมกับงานนี้หรือไม่
การไหลของหลักสูตร
- หลักสูตรนี้จะประกอบด้วย 13 ช่วง
- แต่ละเซสชั่นจะมี 2 ส่วนคือแบบฝึกหัดและการอภิปราย
- ในระหว่างการออกกำลังกายคุณจะต้องแก้ไขการมอบหมายหลักสูตร
- ในระหว่างการสนทนา เราจะหารือเกี่ยวกับงานมอบหมายถัดไป
- แนวคิดทั้งหมดที่กล่าวถึงจะถูกบันทึกไว้ในงานมอบหมาย
- ฉันจะอธิบายแนวคิดที่ไม่ชัดเจน
- หลังจากแต่ละเซสชัน ฉันจะอัปเดตเนื้อหาหลักสูตรตามความก้าวหน้าของเรา
- การมอบหมายงานแต่ละครั้งมี 10% เพราะฉันต้องให้คะแนนคุณในบางเรื่อง
- จะมีการให้คะแนนเมื่อเรียนจบ (ฉันถือว่าสมบูรณ์แล้ว)
- งานที่ได้รับมอบหมายจะถูกให้คะแนนในระหว่างเซสชัน
- เกรดสามารถเป็นบางส่วนได้ขึ้นอยู่กับระดับความสำเร็จ
- พิจารณางานที่ดีที่สุด 10 งาน
- ควรอ่านหรือเริ่มแก้ไขปัญหาก่อนเซสชั่น
- หากคุณไม่สามารถทำงานที่ได้รับมอบหมายให้เสร็จสิ้นได้ คุณสามารถได้รับอนุญาตให้ทำงานให้เสร็จสิ้นได้ก่อนช่วงการฝึกครั้งถัดไป
- เซสชั่นแรกเป็นเซสชั่นการสนทนาเท่านั้น
- เซสชันสุดท้ายเป็นเซสชันที่ได้รับมอบหมายเท่านั้น
- เราทุกคนควรกินพิซซ่าเมื่อจบหลักสูตร
คุณจะต้อง
- แล็ปท็อปที่มี bash shell (ระบบปฏิบัติการ Unix หรือ Windows 10 พร้อมเทอร์มินัล ubuntu)
- เบราว์เซอร์ที่ทันสมัย เช่น Google Chrome รุ่นล่าสุด
- อินเทอร์เน็ต
- โหนดJS
- คอมไพล์
- โปรแกรมแก้ไขข้อความเช่น Atom
เซสชั่นหลักสูตร
ในคอร์สนี้เราจะมาแนะนำ
1. ประวัติแอปพลิเคชันเว็บ
ในเซสชันนี้ เราจะพูดถึงภาพรวมที่มีอยู่ของสิ่งที่นักพัฒนาสามารถเรียนรู้ได้ และสิ่งที่เราจะพูดถึงในหลักสูตรนี้
- การตั้งความคาดหวังต่อหลักสูตร
- ปัญหาที่เราจะแก้ไข
- ประวัติแอปพลิเคชันบนเว็บ
- การตั้งค่าโครงการ ES6 ด้วย babel และ node
- เว็บแพ็ค
มอบหมายงานครั้งต่อไป
- สร้างเว็บแอปง่ายๆ โดยไม่ต้องใช้ไลบรารี
- ปัญหาพื้นฐานที่เราเผชิญ
- แยกรหัสออกเป็นไฟล์ sepret
- OOCSS และ BEM
2. อายุการใช้งานของแอปพลิเคชันสมัยใหม่: ข้อมูลแสดงมุมมอง
ในเซสชั่นนี้ เราจะเริ่มต้นด้วยการสรุปเกี่ยวกับคุณสมบัติ Javascript พื้นฐาน และพูดถึงแนวคิดการเขียนโปรแกรมเชิงฟังก์ชัน
- เฟล็กซ์บ็อกซ์
- สตริงเทมเพลตฟีเจอร์ es6
- ส่วนประกอบที่แสดงผลข้อมูลเป็น html
มอบหมายงานครั้งต่อไป
- กรอกโค้ดการเรนเดอร์เป็น HTML
3. อายุการใช้งานของแอปพลิเคชันสมัยใหม่: การดำเนินการอัปเดตข้อมูล
- เหตุการณ์ DOM
- กำหนดขอบเขตรหัสของเรา
- การเขียนโปรแกรมตามเหตุการณ์ด้วยรูปแบบผู้สังเกตการณ์
มอบหมายงานครั้งต่อไป
- สถาปัตยกรรม Flux (การดำเนินการลดข้อมูลเพิ่มขึ้น)
4. ชีวิตของแอปพลิเคชันสมัยใหม่: การทดสอบ
- การทดสอบหน่วยการแสดงผล HTML
- ฟังก์ชั่นเพียว
- ร้านค้าของรัฐ
- เยาะเย้ยและต้นขั้ว
- การฉีดพึ่งพา
มอบหมายงานครั้งต่อไป
- ทดสอบฟังก์ชันการเรนเดอร์ของเรา
- ทดสอบผู้ควบคุมการกระทำของเรา
- ทดสอบการกระทำของเราในการเปลี่ยนแปลงร้านค้า
5. อายุการใช้งานของแอปพลิเคชันสมัยใหม่: มุมมองจะทริกเกอร์เหตุการณ์
- NodeJS: โมดูล
- เครื่องมือสร้าง: อึก
- การสร้างโดมเสมือน
- รันภารกิจทดสอบของเรา
- เบราว์เซอร์
มอบหมายงานครั้งต่อไป
- พัฒนารายการสิ่งที่ต้องทำประเภทใหม่ที่เรียกว่าตัวนับ
- รายการสิ่งที่ต้องทำสามารถแก้ไขได้แล้ว
6. อายุการใช้งานของแอปพลิเคชันสมัยใหม่: โค้ดแบบอะซิงโครนัส
- ห่วงเหตุการณ์ Javascript
- สัญญาด้วยการดึง
- การสร้างเซิร์ฟเวอร์ REST อย่างง่ายด้วย express
- ซ็อกเก็ต
- แบบอะซิงโครนัส
- การเขียนโปรแกรมเชิงโต้ตอบ
7. การบูรณาการและการปรับใช้อย่างต่อเนื่อง
- ส่วนหน้าด้วยหน้า Git * ต่อต้าน Git * การปรับใช้โค้ดของคุณบน github ด้วย CI * SSH พร้อม Nginx และมาเข้ารหัสกัน
- แบ็กเอนด์ด้วย Capistrano (การบินโหนด) * การปรับใช้บนเซิร์ฟเวอร์ด้วย ssh * การทำงานอัตโนมัติกับ CI ของเรา การยอมรับคำขอ git pull ของเรา * การใช้ flightplan สำหรับการปรับใช้
8. ทุกสิ่งที่คุณต้องการสำหรับ MVP
- ฐานไฟ * *
- การทดสอบกับ Firebase * *
8. สถาปัตยกรรมสำหรับแอปขนาดใหญ่: ปัญหา
- โต้ตอบ * *
- เว็บแอปแบบก้าวหน้า * *
9. สถาปัตยกรรมสำหรับแอปขนาดใหญ่: เฟรมเวิร์ก
- โต้ตอบ * *
- กราฟคิวแอล * *
10. โต้ตอบสคริปต์ดั้งเดิม
- ตั้งค่า * *
- การแจ้งเตือนแบบพุช *
11. พิเศษสำหรับเวลาที่เสียไป
- อิเล็กตรอน * *
12. พิเศษสำหรับเวลาที่เสียไป
หมายเหตุ
#คอร์ส