Tương lai nào cho Swift
Bài viết phân tích về tương lai của ngôn ngữ lập trình Swift, so sánh cú pháp với Objective-C, và khám phá các lĩnh vực ứng dụng như iOS, macOS, Linux, lập trình web và game. Tác giả chia sẻ quan điểm về tiềm năng phát triển của Swift trong hệ sinh thái Apple và các nền tảng khác.

Swift là một trong các ngôn ngữ lập trình mình có "cảm tình" nhất. Mình rất khuyến khích các bạn nên thử nó một lần. Tuy nhiên khi học một ngôn ngữ, ta thường quan tâm về "hệ sinh thái" có thể vận dụng được nó. Chẳng hạn học C++ có thể theo làm game Cocos2dx, Unreal, vv. C# thì có thể làm web, game, ứng dụng desktop với sự hỗ trợ mạnh mẽ của .NET framework. Học R, Python có thể theo hướng data science,vv
Vậy học Swift có thể mần ăn gì được, có tương lai hay không? Cùng theo dõi tiếp nhé!
Tổng quan về ngôn ngữ:
Mình từng đọc một blog kể về chuyện ra đời của Swift là tâm nguyện của bác Steve Jobs. Ông muốn Apple có một ngôn ngữ lập trình riêng. Ông nhấn mạnh là ngôn ngữ này già, trẻ, trai, gái, phụ nữ có thai hay cho con bú đều học được một cách dễ dàng. Đó là lý do Swift được ra đời. Cái trên là mình chém đó, còn đây mới là những gì Steve Jobs nói tại WWDC 1997:
The way you get programmer productivity is not by increasing the line of code per programmer per day. That doesn't work. The way you get programmer productivity is by eliminating lines of code you have to write. The line of code that is the fastest to write, that never breaks, that never needs maintenance is the line that you never have to write. The goal here is to eliminate 80% of the code that you have to write for your app. That's the goal.
À ngoài lề chút, bác Steve Jobs này không biết viết code nhiều không nhưng chém gió công nhận rất hay.
Thực tế khi mình học Swift hồi đầu tháng 8, đến giờ cũng được vài tháng. Mình cũng có chat với nhiều anh em trên mạng thì đa số mọi người đều nhận xét Swift khá dễ học, cú pháp mạch lạc, "trong sáng", viết code mà như đang viết tiếng Anh vậy đó. Trong sáng ở đây là beginner nhìn vô đọc được ngay, không tùm lum tà la. Như ví dụ dưới đây là một đoạn code có cùng chức năng được viết bằng Objective-C và Swift:
Objective - C
https://gist.github.com/KhoaVanNguyen/e5f414ad52c04a3c36f508c283f962fd
Swift
https://gist.github.com/KhoaVanNguyen/d38aed6cfafca1bed3ba3b066863aba7
Được sinh sau đẻ muộn, dễ hiểu là Swift kế thừa được rất nhiều cái hay từ ngôn ngữ tiền nhiệm là Objective-C cũng như các ngôn ngữ script khác như Python, Ruby.
Các tính năng hay của Swift như :
-
Closures, generics, operator overloading.
-
Tuples and multiple return values
-
Notably dynamic dispatch, widespread late binding, extensible programming
-
Optional
-
Protocol-oriented programming
-
Functional programming patterns
-
Error handling với guard, defer
......
Với một blog post giới thiệu về tương lai nào cho nào cho Swift, mình không thể nêu hết tính năng của Swift được, với lại còn nhiều tính năng mà mình chưa biết. Thời gian tới mình sẽ viết tiếp là link về bài post này nha!
Học Swift thì làm được trò trống gì?
Khi học một ngôn ngữ mới, mình luôn tìm hiểu xem làm được gì với nó, có framework nào hỗ trợ. Hiện tại mình khá hài lòng về những gì Swift có thể mần được
Lập trình di động IOS
Đương nhiên ngôn ngữ Apple làm ra thì được dùng để phát triển ứng dụng IOS rồi. Lập trình IOS chỉ cần Xcode + Swift là được. Năm ngoái cũng có tin là Google sẽ dùng Swift để viết app cho Android, tuy nhiên, mình nhận định đây chỉ là hành động thả thính của Google thôi, chứ viễn cảnh này rất khó xảy ra lắm bởi lẽ Google cũng có ngôn ngữ riêng của mình, mắc gì lại phải dính tới Apple làm gì cho thêm rắc rối!
Lập trình ứng dụng cho OS X ( Mac app )
Ngoài lập trình IOS, chúng ta có thể viết ứng dụng cho máy Mac với Swift
Viết được ứng dụng như Final Cut Pro thì tiền không có chỗ để luôn :)
Lập trình web
Trong quá khứ, bạn đã có thể lập trình web dùng Swift với các framework như Perfect. Gần đây, IBM công bố hỗ trợ các nền tảng để có thể viết, build và run server side code bằng Swift với sự ra đời của web framework mới là Kitura. Nói chung phần lập trình web với Swift này mình cũng chưa thử nên không thể chém gió bậy bạ được. Khi nào mình đụng nó mình sẽ viết tiếp các bài mới về framework Kitura này cho mọi người!
Kết luận:
Swift là ngôn ngữ tinh tế, dễ học, hay nói thẳng ra là ai cũng có thể học được. Còn về mặt ứng dụng bạn không cần lo nữa vì tương lai của Swift khá sáng lạng. Apple cho open source Swift nên được sự hỗ trợ rất lớn từ cộng đồng dev. Vì thế bạn không nhất thiết phải có MacBook hay phải lập trình trình IOS mới nên học Swift. Bạn hoàn toàn có thể viết web app với Swift!
Related Posts
Discover more content you might enjoy

Game Theory trong thời đại AI: Khi máy móc tham gia vào "trò chơi"
Bài viết phân tích sự giao thoa giữa lý thuyết trò chơi (Game Theory) và trí tuệ nhân tạo, giải thích cách AI đang thay đổi các nguyên lý cân bằng Nash và chiến lược tối ưu. Tác giả đưa ra các ví dụ thực tế về ứng dụng trong kinh doanh, giao thông và an ninh mạng.

Bài này không phải AI viết
Suy ngẫm chân thành về giá trị của việc viết thủ công trong kỷ nguyên AI. Dù AI có thể tạo nội dung hiệu quả, bài viết này là lời khẳng định về sự kết nối cá nhân và giá trị độc đáo mà con người mang lại cho văn bản của mình.

Dự đoán về Vibe Coding: Cách AI sẽ biến đổi việc tạo ra phần mềm
Bài viết phân tích cách 'vibe coding' - phương pháp lập trình dựa trên mô tả ý định thay vì viết code trực tiếp - sẽ dân chủ hóa việc phát triển phần mềm. Tác giả dự đoán về sự chuyển đổi từ giao diện dòng lệnh sang thiết kế trực quan, sự xuất hiện của phần mềm tự cải thiện, và tác động đến cấu trúc tổ chức công ty cũng như các thị trường ngách chưa được khai thác.

Dùng AI để hỗ trợ đầu tư crypto
Bài viết chia sẻ 7 mẹo thực tế để sử dụng AI (như Claude.ai và ChatGPT) hỗ trợ hiểu rõ whitepaper và tài liệu kỹ thuật của các dự án blockchain. Từ việc yêu cầu tóm tắt đơn giản, giải thích như cho trẻ em, đặt câu hỏi làm rõ, sử dụng ví dụ, tạo tình huống giả định, chuyển đổi thuật ngữ, đến so sánh nhiều nguồn tài liệu - giúp nhà đầu tư đưa ra quyết định đầu tư crypto sáng suốt hơn.

Vibe Coding: Cuộc Cách Mạng Trong Phát Triển Phần Mềm

Tài sản và dòng tiền (Asset & Cashflow) khác nhau thế nào?
Phân biệt giữa tài sản và dòng tiền trong đầu tư, cách chúng hoạt động và tầm quan trọng của việc xây dựng dòng tiền ổn định.