Admin | Group
» Tìm Kiếm TeamAce.S2Vn.Top
» Thông Báo
Thông Báo Bạn Đang Truy Cập Bằng CCBot/2.0 Với Địa Chỉ IP 54.162.105.6
Thông Báo Dịch Vụ Đăng Kí Hosting Free Tại TeamX.CF, HostAce.CFAceVip.CF - Cung Cấp Bởi TeamAce
» Quảng Cáo - ADS
ads Top2s.Net - Bói Bài, Trắc Nghiệm, Đoán Vận Mệnh
ads OlaVn.Net - Me Ola Hài Hước - Thiên Sứ Moon
ads Nro.GameHub.Pro - Mua Vàng NRO Tự Động Uy Tín Nhất
ads NickAo.Com - Bán Nick NRO, LQ, Avatar, Ninja Tự Động
ads Minh Quang - Wap Mod Tổng Hợp Từ A, B ,C Đến X, Y, Z
ads Linh Văn Đông - Wap Hỗ Trợ Các Bản Mod Army Mobi Lậu
» » »
Lượt xem: 198
Đăng: 12/10/2017 - 18:26

Hỗ trợ:
Đừng học code theo kiểu “trang trí”

Một cậu em khác lại nói "Em muốn học Swift". Nhưng khi hỏi "Vì sao em muốn học Swift mà không học Pascal chẳng hạn", cậu ấy trả lời "Vì em quen một anh CEO code camp hay tổ chức hackathon Swift".

Việc học code một cách nghiêm túc, để những hiểu biết về code có thể mang lại ý nghĩa cho chính bản thân bạn là không hề dễ dàng. Bạn rất nên học code để luyện tư duy và xây dựng cách làm việc, nhưng nếu bạn nghĩ rằng bạn có thể đem những dòng code của mình áp dụng vào công việc thực tế, bạn sẽ phải bỏ ra rất nhiều công sức đầu tư. Kể cả bạn từng có giải tin học cấp thành phố, kể cả nếu bạn đã từng tốt nghiệp chuyên toán tin (rồi chuyển sang tài chính hay quản trị kinh doanh), code nghiêm túc để giải quyết các vấn đề thực tế vẫn sẽ không hề đơn giản.





Vậy nên nếu bạn muốn học code để đẹp CV, chỉ để sếp coi bạn là chuyên gia công nghệ của Phòng Truyền Thông hay Phòng Tài Chính, để có thể trò chuyện ở tư thế “ngang hàng” với bộ phận Information System trong công ty thì bạn hãy nghĩ lại. Chừng nào bạn chưa hiểu được code có thể áp dụng như thế nào vào thực tế, những gì bạn biết vẫn sẽ chỉ là “múa rìu qua mắt thợ”. Bộ phận IS trong công ty (kéo theo đó là ông sếp của bạn), nếu đủ hiểu biết, sẽ nhanh chóng nhận ra rằng những “kỹ năng IT” mà bạn khoe khoang trên CV là vô nghĩa.

Đừng vội vã nhảy vào học những thứ ngôn ngữ được các trung tâm trực tuyến tung hô để rồi cuối cùng đứng lưng chừng giữa “hiểu” và “vô ích”. Kịch bản đó cũng giống như khi bạn đi “khoe” với nhà tuyển dụng rằng bạn hiểu công thức kế toán, hiểu Dr là gì và Cr là gì nhưng lại chưa một lần cân được sổ sách thực tế, chưa từng hiểu giá trị của công việc kế toán với hoạt động của công ty. Tất cả những gì bạn đã học về code, nếu đi sai đường, hoàn toàn có thể chỉ là sự phí phạm về thời gian và công sức.

Bạn NÊN học code

Khi đọc những dòng ở trên, bạn có thể mang suy nghĩ rằng tôi cậy mình là một kỹ sư phần mềm đem kiến thức ra “lòe” bạn rằng những gì tôi biết là cao siêu quá tầm với của bạn. Rằng bạn không nên học code, ngành nghề mà tôi cùng vô số bạn trẻ khác đã “đốt” ít nhất 4 năm đại học để theo đuổi.

Sự thực không phải như vậy. Tôi nghĩ tất cả mọi người đều NÊN học code. Nhưng không phải ai cũng nên học đến mức code ra được sản phẩm hoàn thiện.

Steve Jobs đã từng nói “Hãy học lập trình. Nó dạy bạn cách suy nghĩ” và sự thật là như vậy. Code nói riêng và toàn bộ ngành IT nói chung có nhiệm vụ là cải thiện cuộc sống, cải thiện quy trình làm việc của con người. Các khái niệm của code, ví dụ như lập trình hướng đối tượng hay các framework (tạm hiểu là các giải pháp được thiết kế sẵn cho các vấn đề hay gặp) chẳng hạn, đều sinh ra để cải thiện quy trình làm việc cũng như sản phẩm của coder. Khi tìm hiểu những khái niệm này, bạn sẽ thấy sự kỳ diệu nằm trong tư duy của người làm phần mềm.





Ví dụ, nghề code có khái niệm “DRY – Don’t Repeat Yourself”. Hãy thử tưởng tượng tôi có một đoạn code làm một tác vụ cụ thể sẽ cần sử dụng đi sử dụng lại nhiều lần, ví dụ như tính năng đặt tên file dữ liệu theo định dạng: [loại dữ liệu_phút giờ ngày tháng] rồi lưu vào C:data. Tôi sẽ cần phải dùng tính năng này để lưu file về các sự cố trong ngày, những người dùng đã ghé thăm trang web ngày hôm nay v…v…, và theo cách làm việc kiểu "mù code" thì cứ chỗ nào cần dùng, tôi sẽ paste đoạn code thực hiện tính năng lưu file.

Nhưng điều gì sẽ xảy ra nếu tôi không muốn lưu vào C:data nữa mà muốn lưu vào C:save? Điều gì sẽ xảy ra nếu tôi không muốn lưu theo định dạng tên [loại dữ liệu_ngày tháng] thay vì [loại dữ liệu_phút giờ ngày tháng] như ở trên? Nếu copy code ra nhiều nơi tôi sẽ phải mở từng đoạn code đã paste rồi sửa lại. Làm như vậy không chỉ tốn thời gian mà còn rất dễ bỏ sót.

Giải pháp ở đây là “gói” riêng các đoạn code có nhiệm vụ lưu file vào một chỗ (chính xác hơn là một function) và khi nào cần thì gọi tới hàm đó để truyền vào nội dung file cần ghi. Nếu cần thay đổi định dạng tên file ghi ra hay vị trí lưu file, tôi chỉ cần thay đổi duy nhất các dòng code bên trong hàm này, không tốn thời gian và cũng không thể bỏ sót.





Đây chỉ là một ví dụ nhỏ cho thấy vì sao người học code biết cách tư duy mạch lạc, logic và có trọng tâm. Nhưng để hiểu được ví dụ này, bạn không cần học tới những ngôn ngữ thường được sử dụng cho các hệ thống doanh nghiệp mà chỉ cần dùng tới những ngôn ngữ căn bản như Pascal/C (để hiểu các khái niệm căn bản của lập trình) và C (để hiểu lập trình hướng đối tượng).

Sau đó, bạn có thể chuyển thẳng lên một ngôn ngữ theo tôi là không nên học ngay từ đầu như Java, Javascript hoặc C#. Các ngôn ngữ này có rất nhiều nền tảng (framework) được thiết kế để giải quyết các vấn đề thực tế mà coder hay gặp.

Tư duy là quan trọng

Có vẻ hơi trái ngược khi vừa khuyên bạn code ra được các ứng dụng “nghiêm túc” là rất khó khăn rồi lại khuyên bạn học hết ngôn ngữ này sang ngôn ngữ khác. Nhưng, ở đây điều tôi thấy chắc chắn sẽ có ích cho bạn là tư duy code chứ không phải là khả năng code ra sản phẩm hoàn thiện. Lý do là bởi code ra sản phẩm đòi hỏi bạn phải giải quyết được những bài toán hết sức cụ thể và cũng phải dành nhiều thời gian đầu tư trau chuốt cho… hết lỗi.

Bạn có thể hình dung như sau: code để hiểu tư duy cũng giống như ngồi đọc một/nhiều quyển sách (sách bình luận về mỹ thuật chẳng hạn) và ngẫm nghĩ, “cảm” được những điều hay ho thú vị trong những quyển sách đó. Còn code ra sản phẩm thực tế có nghĩa rằng bạn phải vận dụng được những điều hay ho thú vị này vào một công việc (thường) bị định nghĩa từ trước: “Tôi muốn một bức tranh chân dung. Hãy vẽ tôi đi”.

Phần Tiếp Theo: Không, xin đừng "nhảy" vào học code! - Phần 3
» Bình Luận HTMLCommentBox
TeamAce đang tải bình luận...

» Bình Luận FaceBook

» Cùng chuyên mục
» Share Code Blog.Xtace.CF - Kaga Akatsuki Blog √
» Không, xin đừng "nhảy" vào học code! - Phần 3 √
» Xem Code Wap, Web Khác √
» Dịch Vụ Hosting Free TeamX.CF Và Wap1St.CF - Cung Cấp Bởi TeamAce √
» FileBox - Simple File Hosting Script - Code Wapupload Giống UpNhanh √
» Giao Diện Mới √
» Một Số Logo Wap Đẹp √
» Không, xin đừng "nhảy" vào học code! - Phần 1 √
» Bài Viết Ngẫu nhiên
» [Thơ Vui] Chùm Thơ Tình Toán - Lý - Hoá √
» Giao Diện Mới √
» Game Phiêu Lưu Kinh Dị Cấm Ai Yếu Tim - Silent Hill 3 Free √
» Những lời nói vu vơ của trẻ em có thể trở nên đáng sợ như thế nào - Phần 1 √
» Soft Yaoi - Chap 3 √
» Game Ninja School Offline 1 For Java √
» Trung Tâm Hỗ Trợ
» T.T Báo Lỗi - Hỗ Trợ - Góp Ý