Kotlin คือภาษาในการเขียนโปรแกรมแบบ general purpose และ cross-platform ที่มี type inference ประกอบ นอกจากนี้ Kotlin ยังถูกสร้างขึ้นเพื่อให้ใช้งานได้อย่างสมบูรณ์กับ Java และ JVM อีกด้วย ดังนั้น Kotlin แทบจะใช้งานทุกที่ที่มี Java Code อยู่ครับ
ในปัจจุบัน Kotlin ได้รับความนิยมสูงมากในการพัฒนา Android Applications อย่างในการสำรวจของ Stackoverflow พบว่า Kotlin เป็นภาษาอันดับ 4 ที่นักพัฒนาชื่นชอบในปี ค.ศ.2020 รองจาก Rust, TypeScript และ Python ขณะที่ศักยภาพในการทำเงินนั้น Kotlin อยู่ในลำดับ 15 ทั่วโลก และลำดับ 5 ในสหรัฐอเมริกา
นอกจากนี้ใน ค.ศ.2019 Google ได้ประกาศว่า Kotlin เป็นภาษาที่ Google ชื่นชอบเป็นอันดับแรกในการพัฒนา Android (เหนือ Java) ดังนั้นไม่ต้องสงสัยว่าถ้าคุณอยากเป็น Android Developer คุณควรจะต้องมีทักษะและเข้าใจการใช้งาน Kotlin เป็นอย่างดี
เนื่องจากเทคโนโลยีที่พัฒนาขึ้น ทำให้คุณไม่มีความจำเป็นต้องไปหาหนังสือหรือสถาบันต่างๆ ที่สอน Kotlin อีกต่อไป เพราะคุณสามารถเรียน Kotlin ได้อย่างมีประสิทธิภาพทางออนไลน์
เราไปดูกันดีกว่าครับ คอร์สสอน Kotlin ออนไลน์มีคอร์สไหนน่าเรียนบ้าง
ข้อควรทราบ:
- คอร์สสอน Kotlin ที่ผมจะแนะนำอยู่ใน Udemy และ Coursera ถ้าใครยังไม่คุ้นเคยและเข้าใจเงื่อนไขของทั้งสองแพลตฟอร์มนี้ โปรดอ่านบทความ “แพลตฟอร์มเรียนออนไลน์” ก่อนสมัครครับ
- ราคาและเงื่อนไขของแต่ละคอร์สมีโอกาสที่จะเปลี่ยนแปลงได้ โปรดตรวจสอบกับเว็บไซต์ผู้ให้บริการอีกครั้งเพื่อความแน่นอนครับ
- สำหรับมือใหม่ที่อยากเรียน Kotlin คอร์สที่ 1-2 คือตัวเลือกสำหรับคุณ แต่สำหรับ Java Developer คุณควรเลือกคอร์สที่ 3-5 ครับ
Udemy
คอร์ส 1-4 อยู่ในแพลตฟอร์มของ Udemy
สำหรับคอร์สที่ 1-2 นั้นจะเหมาะสำหรับมือใหม่ เพราะละเอียดกว่า และเริ่มทุกอย่างตั้งแต่เริ่มแรก แต่คอร์สที่ 3-4 จะเหมาะสำหรับนักพัฒนา Android หรือ Java ที่อยากจะเรียน Kotlin ครับ ตัวคอร์สจะกระชับกว่า และเน้นที่การ transition จาก Java มายัง Kotlin
“การลดราคา” ของ Udemy มีแทบทุกสัปดาห์ แถมยังลดแบบล้างสต็อกถึง 90% ขึ้นไป ดังนั้นคอร์สที่ราคาเต็มอยู่ที่หลักพันจะเหลือแค่ 300-400 บาทเท่านั้น
เนื่องจากการลดราคาแรงขนาดนี้ คุณไม่ควรจะซื้อคอร์สที่ราคาเต็มโดยสิ้นเชิง ผมแนะนำให้คุณรอ 2-5 วันในกรณีที่คอร์สอยู่ที่ราคาเต็ม หรือว่าคุณจะสมัครแจ้งเตือนกับ Victory Tale ไว้ก็ได้ครับ ผมจะได้แจ้งให้คุณทราบเมื่อมีลดราคา
1. The Complete Android 10 & Kotlin Development Masterclass
คอร์สนี้เป็นคอร์สสอน Kotlin ของ Denis Panjuta วิศวกรซอฟต์แวร์จากประเทศเยอรมนี คอร์สนี้จะเจาะลึกการสร้าง Android App โดยใช้ Kotlin อย่างสมบูรณ์ แนวทางการสอนของเขาจะเป็นแบบ project-based แบบหนักหน่วงที่คุณจะได้สร้าง app ขึ้นมาจริงๆ และ publish ลงใน Google Play ครับ
สิ่งที่คุณได้เรียนในคอร์สนี้จะประกอบด้วย
ส่วนทฤษฎี (ประมาณ 6 ชั่วโมง)
- Install Android Studio + Set Up Emulator
- แนะนำพื้นฐานของ Kotlin ตั้งแต่ Data Types, Variables, Operators, If Statements, Loops ฯลฯ
- พื้นฐานของ Object Oriented Programming (OOP) ใน Kotlin อย่างเช่น Classes, Initializers, Inheritance
- ArrayLists, Lambda Expressions, Visibility Modifiers
- และอื่นๆ อีกมากมาย
ภาคปฏิบัติ (ประมาณ 40 ชั่วโมง)
การเรียนในส่วนนี้จะค่อยๆ ไต่ระดับจากง่ายไปหายาก App แรกที่คุณจะสร้างจะค่อนข้างง่าย แต่จะซับซ้อนขึ้นไปตามลำดับครับ
- Age in Minutes App, Calculator App – เรียน XML และวิธีการสร้าง UI
- Quiz App, Drawing App – เรียนวิธีการใช้ Canvas, การ import และ export รูปภาพ
- Workout App -ในส่วนนี้จะสอนการสร้าง UI ที่ซับซ้อนขึ้น การใส่ฟีเจอร์อย่าง Timers และการใส่ระบบที่ช่วยให้คุณทำเงินได้จาก App
- Happy Places App – สอนการใส่ Location, GPS และการใช้ Google Maps API ใน Android Apps ของคุณ
- Weather App – สอนการดาวน์โหลดเว็บไซต์, JSON, GSON โดยใช้ API
- Trello Clone – โปรเจคใหญ่ที่คุณจะได้สร้าง App ที่มีฟีเจอร์แนว Drag & Drop เหมือนกับ Trello นอกจากนี้คุณจะได้เรียนวิธีการจัดการ User รวมไปถึง Online Database
- ใช้งาน Google Firebase
โดยรวมแล้วผมมองว่าคอร์สนี้สมบูรณ์แบบครับ โครงสร้างของคอร์สดีมาก เพราะในเนื้อหาภาคทฤษฎีนั้น คุณจะได้ทำควิซมากมายที่ช่วยให้คุณไม่ลืมเนื้อหาที่เรียนไปแล้ว ส่วนภาคปฏิบัติก็จะไล่จากง่ายขึ้นมาหายาก ซึ่งจะช่วยให้คุณไม่งง หรือว่าหลงอยู่ใน Code ที่คุณไม่เข้าใจครับ
ทางผู้สอนได้แจ้งว่าหลังจากที่คุณเรียนเนื้อหาทั้งหมด 45.5 ชั่วโมงจบ และฝึกฝนอีกสักหน่อย คุณก็พร้อมแล้วสำหรับการสมัครงานเป็น Android Developer หรือว่ารับงานในฐานะ Freelancer ครับ
คอร์สนี้ได้คะแนนรีวิวดีเยี่ยมถึง 4.6/5.0 จากนักเรียนเกือบ 10,000 คนครับ
2. Android App Development Masterclass using Kotlin
คอร์สสอน Kotlin ที่จัดทำโดย Tim Buchalka นักพัฒนาซอฟต์แวร์ที่มีประสบการณ์มากกว่า 35 ปีในบริษัทชั้นนำของโลก นอกจากนี้เขายังมีความสามารถในการสอนอีกด้วย คอร์สสอนการเขียนโปรแกรมของเขาถูกใช้เพื่อเทรนนักพัฒนาหน้าใหม่ในบริษัทใหญ่ๆ อย่างเช่น Paypal, IBM หรือ Mercedes-Benz ครับ
คุณไม่จำเป็นต้องเป็นนักพัฒนาในบริษัทใหญ่ๆ เพื่อที่จะเรียนกับเขา เพราะวันนี้เขาพร้อมแล้วที่จะสอนการใช้งาน Kotlin ให้กับคุณใน Udemy นี้เอง
รูปแบบการสอนในคอร์สนี้จะเป็นแบบ project-based (กินเนื้อหามากกว่า 90% ของคอร์ส) นั่นแปลว่าคุณจะได้เรียนทักษะต่างๆ ในการใช้ Kotlin ผ่านภาคปฏิบัติ หรือการสร้าง app ต่างๆ นั่นเองครับ แต่ภาคทฤษฎีและ syntax ต่างๆ ก็จะมีสอนให้อย่างละเอียดด้วยเช่นกันครับ แม้ว่าจะไม่ได้เป็นเนื้อหาส่วนใหญ่ของคอร์สก็ตาม
สิ่งที่เขาจะสอนในคอร์สนี้คือ
- แนะนำพื้นฐานของ Android และ Android Studio รวมไปถึงการ set up ตัว virtual device
- เจาะลึกพื้นฐานในด้านทฤษฎีของ Kotlin ตั้งแต่ Variables, Types, Conditions, Classes, Objects and Instances, Lists, Loops ฯลฯ
- ลองสร้าง app ต่างๆ โดยใช้ Kotlin อาทิเช่น Button Counter App, Calculator App, Flickr Browser App ฯลฯ
- เรียนพื้นฐานของ Databases, SQL และ SQLite บน Android
- ViewModel and LiveData
- ลองสร้าง TaskTimer App
- Multiple Tables และ Database Upgrades
- การใส่ฟีเจอร์ต่างๆ ลงใน apps ของคุณ
- การทำ Testing เพื่อให้มั่นใจว่า app ของคุณใช้ได้กับ Android เวอร์ชันเก่า
- และอื่นๆ อีกมากมาย
ด้วยเนื้อหาแบบวีดิโอกว่า 59 ชั่วโมง คอร์สนี้เป็นคอร์สสอน Kotlin ที่ละเอียดที่สุดใน Udemy หรืออาจจะในโลกออนไลน์ด้วยซ้ำไป คุณจะได้เรียนอย่างครบถ้วนทั้งภาคทฤษฎีและปฏิบัติที่พร้อมต่อการนำไปสร้าง Android App ของคุณเองต่อไป
สำหรับเรื่องคุณภาพเสียง และภาษา ผมได้ตรวจสอบดูและพบว่าสำเนียงและเสียงของครูผู้สอนชัดเจน และฟังง่ายมาก นอกจากนี้ยังมี Subtitle ภาษาอังกฤษประกอบให้อย่างดีด้วย (จริงๆ แล้วภาษาไทยก็มีครับ แต่คุณภาพจะต่ำกว่าภาษาอังกฤษเพราะเป็นแบบ Auto-generated)
ในส่วนของคะแนนรีวิว คอร์สนี้ได้ไป 4.4/5.0 จากนักเรียนกว่า 25,700 คนครับ
3. Kotlin for Java Developers
สำหรับใครที่มีพื้นฐาน Java มาอยู่แล้ว คุณน่าจะชอบคอร์สนี้เป็นพิเศษ การเรียนการสอนจะรวดเร็วกว่า เพราะไม่ต้องแนะนำโครงสร้างของการเขียนโปรแกรมให้กับมือใหม่เหมือนกับสองคอร์สก่อนหน้า นอกจากนี้จะแสดงให้เห็นถึงความแตกต่างระหว่าง Java และ Kotlin รวมไปถึงวิธีการประยุกต์ใช้ความรู้ Java ของคุณกับ Kotlin ด้วยครับ
ตัวคอร์สสอนโดย Tim Buchalka คนเดิมครับ สิ่งที่คุณจะได้เรียนในคอร์สนี้ได้แก่
- แนะนำ Kotlin และอธิบายความแตกต่างระหว่าง Kotlin และ Java
- Data Types และการจัดการ Null References
- Object Oriented Programming ใน Kotlin อย่างเช่น Classes, Functions และ Inheritance
- Loops, If, Try/Catch Expression
- Lambda Expressions, Collections and Generics
- File I/O
- การใช้งาน Java กับ Kotlin (Java Interoperability)
- และอื่นๆ อีกมากมาย
สำหรับการสอนคอร์สนี้จะไม่มีการทำโปรเจคเหมือนกับคอร์สอื่น แต่จะเน้นไปที่ syntax ของ Kotlin และ Java Interoperability ดังนั้นนี่จึงเป็นคอร์สที่ช่วยให้นักพัฒนา Java เรียนรู้การใช้งานในเวลาที่สั้นที่สุดเลยก็ว่าได้ครับ โดยเนื้อหาทั้งหมดจะอยู่ที่ 16.5 ชั่วโมง
คะแนนรีวิวของคอร์สนี้ได้ไป 4.4/5.0 จากนักเรียนกว่า 11,800 คนครับ
4. Kotlin for Android & Java Developers: Clean Code on Android
คอร์สนี้เป็นอีกหนึ่งคอร์สสอน Kotlin สำหรับนักพัฒนาที่เคยมีประสบการณ์ในการพัฒนา Android Apps หรือว่าเป็น Java Developer อยู่แล้ว ตัวคอร์สสอนโดย Peter Sommerhoff โปรแกรมเมอร์ที่มีประสบการณ์เกือบ 6 ปีในการใช้งาน Kotlin ครับ
ตัวคอร์สจะเน้นไปที่การเขียนโค้ดของ Kotlin ที่สั้น กระชับ และมีประสิทธิภาพ โดยคุณจะได้เรียนเนื้อหาดังต่อไปนี้ครับ
- แนะนำ Kotlin และเตรียม Software ต่างๆ ให้พร้อม
- พื้นฐานของ Kotlin ตั้งแต่ Variables, Data Types, Expressions vs Statements, Nullables
- Conditional Statements, Arrays and Lists, Loop
- Functions และ Object Oriented Programming ใน Kotlin
- Binary & Hexadecimal Numbers
- Input & Output
ตัวคอร์สจะสั้นกว่าคอร์สอื่นอย่างชัดเจน เพราะมีเนื้อหาประมาณ 6.5 ชั่วโมงเท่านั้น ถ้าคุณต้องการจะศึกษาวิธีการทำโปรเจค คุณจะต้องลองทำด้วยตัวเอง หรือว่าลงเรียนคอร์สอื่นเพิ่มเติมครับ
คอร์สนี้ได้คะแนนรีวิว 4.4/5.0 จากนักเรียนทั้งหมด 10,600 คนครับ
Coursera
คอร์สที่ 5 อยู่ในแพลตฟอร์มของ Coursera
5. Kotlin for Java Developers by JetBrains
คอร์สสอน Kotlin ที่จัดทำโดย Jetbrains บริษัทซอฟต์แวร์ที่ผลิตเครื่องไม้เครื่องมือต่างๆ สำหรับนักพัฒนาซอฟต์แวร์ รวมไปถึง Project Managers ต่างๆ อย่างเช่น IDE เป็นต้นครับ
สำหรับคอร์สนี้จะเป็นการสอน Kotlin ให้กับนักพัฒนา Java เช่นเดียวกับคอร์สที่ 3-4 โดยจะเน้นไปที่ Interoperability กับ Java รวมไปถึงการเชื่อมโยงไป framework อื่นๆ ด้วยครับ
สิ่งที่คุณจะได้เรียนในคอร์สนี้คือ
- พื้นฐานของ Kotlin อาทิเช่น Variables, Functions, Default Arguments, Conditionals, Loops
- Functional Programming และ Nullability (Lambdas, Nullable Types, Function Types)
- Properties, OOP ใน Kotlin, Generics, Constants ฯลฯ
- Sequences, Library Functions, Lambda with receiver
ในการเรียนคอร์สนี้ให้จบจะใช้เวลาประมาณ 25 ชั่วโมง แต่เวลาในที่นี้จะไม่เท่ากับ Udemy ที่เป็นเนื้อหาแบบวีดิโอในคอร์ส เพราะเวลาโดยประมาณของ Coursera จะรวมทั้งหมดทั้งเวลาในการทำ Quiz, เวลาที่คุณใช้อ่านเอกสาร ฯลฯ ถ้านับแค่วีดิโออย่างเดียว คอร์สนี้จะมีเนื้อหาประมาณ 4 ชั่วโมงครับ
ดังนั้นถ้าเทียบด้านความละเอียด คอร์สนี้ถือว่าสู้คอร์สของ Udemy ไม่ได้เลย แต่ถ้าคุณอยากเรียน Kotlin โดยสถาบันทั้งหลายแล้ว คอร์สนี้น่าจะเป็นตัวเลือกอันดับต้นๆ ครับ
สำหรับใครที่อยากได้ประกาศนียบัตรและการประเมินผล คุณจะต้องจ่ายเงิน $49 หรือประมาณ 1,470 บาทในการซื้อคอร์สนี้ครับ