Làm thế nào tôi có thể thực sự thành thạo một ngôn ngữ lập trình?


103

Tôi biết rằng học một ngôn ngữ, bạn chỉ cần mua một cuốn sách, làm theo các ví dụ và bất cứ khi nào có thể hãy thử các bài tập. Nhưng điều tôi thực sự tìm kiếm là làm thế nào để thành thạo ngôn ngữ một khi bạn đã học nó.

Bây giờ tôi biết rằng kinh nghiệm là một yếu tố chính, nhưng về việc học nội bộ của ngôn ngữ, cấu trúc cơ bản là gì, v.v.

Có những bài báo nói rằng hãy đọc cuốn sách này, đọc cuốn sách đó, tạo ra trò chơi này và trò chơi đó. Nhưng với tôi điều này không có nghĩa là thành thạo một ngôn ngữ. Tôi muốn có thể đọc mã của người khác và hiểu nó, bất kể nó khó đến mức nào. Để hiểu khi nào nên sử dụng một chức năng và khi nào khác, vv

Danh sách có thể đi và về nhưng tôi tin rằng tôi đã đưa ra quan điểm. :)

Và cuối cùng, lấy bất kỳ ngôn ngữ nào làm ví dụ nếu cần, mặc dù tốt nhất sẽ là nếu C được lấy làm ví dụ.


11
Kinh nghiệm là tất cả những gì nó thực sự sôi lên. Tất cả lý thuyết bạn là một chuyên gia là vô dụng trừ khi bạn có thể áp dụng nó vào thực tế.
Simon Whitehead

2
Thực hiện một trình biên dịch cho ngôn ngữ này. Trên thực tế, đó là cách yêu thích của tôi để thử bất kỳ ngôn ngữ mới nào. Nếu nó có vẻ hơi quá dễ dàng và nhàm chán, hãy thử xác định ngữ nghĩa ngôn ngữ chính thức thay vào đó, sử dụng khung K hoặc một cái gì đó tương tự.
SK-logic

6
"Người đàn ông, khoai tây là dinossaur, vũ trụ xe hơi". không quan trọng bạn thành thạo một ngôn ngữ đến mức nào, nếu mã xấu và không có ý nghĩa, nó vẫn khó hiểu.
Renato Dinhani

2
Tôi cảm thấy như bị thiếu điểm một chút. Langauges phát triển, vì vậy không có sự thành thạo ngôn ngữ, bạn phát triển với nó, bạn càng sử dụng nó nhiều thì bạn càng phải học.
nycynik

2
Mã và đọc mã. Lấy một phần ngẫu nhiên của nhân linux (Lập trình C) và tìm ra chức năng làm gì.
Alex Hart

Câu trả lời:


166

Tôi phải trả lời, "Tất cả những điều trên." Mọi người tranh luận về việc liệu mã hóa là một nghệ thuật, thủ công, một ngành kỹ thuật hay một nhánh của toán học, và tôi nghĩ thật công bằng khi nói đó là một trong số đó. Như vậy, bạn càng mang nhiều kỹ thuật để làm chủ ngôn ngữ thì càng tốt. Đây là một danh sách một phần:

  • Sử dụng ngôn ngữ cả ngày, mỗi ngày. Thông thường, điều này có nghĩa là làm việc toàn thời gian trong ngôn ngữ.

  • Đọc tất cả những gì bạn có thể về ngôn ngữ. Đặc biệt, "thực hành tốt nhất" và thành ngữ.

  • Tham gia nhóm người dùng để nói chuyện với người khác về ngôn ngữ và những gì họ làm với ngôn ngữ đó.

  • Làm việc với mã của người khác! Không có cách nào nhanh hơn để học những gì không nên làm trong một ngôn ngữ hơn là phải dọn dẹp sau khi một người làm điều gì đó khủng khiếp.

  • Hỗ trợ mã bạn viết - mọi lỗi trở thành một chuyến tham quan các quyết định tồi tệ nhất của bạn!

  • Học khoa học máy tính và ngôn ngữ nói chung

  • Học một ngôn ngữ rất khác. Một lời khen tuyệt vời cho C sẽ là một ngôn ngữ chức năng như Lisp. Điều này sẽ biến cách bạn nghĩ về ngôn ngữ thủ tục của bạn từ trong ra ngoài.

  • Tìm hiểu cách sử dụng các khung và API có sẵn cho ngôn ngữ đó.

  • Dành thời gian để làm thí nghiệm của riêng bạn với ngôn ngữ. SICP không áp dụng cho C, nhưng thái độ học ngôn ngữ bằng cách kiểm tra giới hạn của nó là rất hiệu quả.

  • Đọc lịch sử của ngôn ngữ để tìm hiểu lý do tại sao nó được thực hiện theo cách đó.

  • Tham dự các hội nghị để nghe các tác giả ngôn ngữ nói, hoặc để nghe những gì các nhà lãnh đạo ngành công nghiệp đang làm với ngôn ngữ.

  • Tham gia một lớp học bằng ngôn ngữ.

  • Dạy ngôn ngữ cho người khác (nhờ Bryan Oakley )

Tóm lại, làm mọi thứ bạn có thể nghĩ ra. Không có cách nào để biết mọi thứ về hầu hết các ngôn ngữ. Mỗi kỹ thuật học tập bạn sử dụng mang lại một viễn cảnh bổ sung cho sự hiểu biết của bạn.


76
+5 cho Hỗ trợ mã bạn viết - mọi lỗi sẽ trở thành chuyến tham quan cho các quyết định tồi tệ nhất của bạn!
Jennifer S

8
+1 chỉ cho câu cuối cùng:Every technique you use to learn brings and additional perspective to your understanding.
Izkata

1
@Izkata: OMG, tôi đã viết nó chưa? Tôi thực sự là một người nói tiếng Anh bản ngữ! Tôi đã sửa nó. Cảm ơn!
GlenPeterson

2
@GlenPeterson ... Thật ra, tôi chỉ sao chép dán mà không chú ý nhiều đến câu bị "tắt". +1 thực sự là cho ý định đằng sau nó. = P
Izkata

13
+1 cho "Tìm hiểu một ngôn ngữ rất khác. Một lời khen tuyệt vời cho C sẽ là một ngôn ngữ chức năng như Lisp. Điều này sẽ thay đổi cách bạn nghĩ về ngôn ngữ thủ tục của bạn. - đây có lẽ là quan trọng nhất Nó giúp bạn học cách học về lập trình (tức là tìm gì trong tình huống nào).
ness101

53

10.000 giờ thực hành là những gì nó cần.

Đọc "Dạy lập trình trong mười năm"

Những điểm chính từ phía trên:

  • Hãy quan tâm đến lập trình, và làm một số bởi vì nó là niềm vui. Hãy chắc chắn rằng nó vẫn đủ vui để bạn sẵn sàng đưa vào mười năm / 10.000 giờ của mình.
  • Chương trình. Loại học tốt nhất là học bằng cách làm.
  • Nói chuyện với các lập trình viên khác; đọc các chương trình khác

1
Đó là những gì tôi sẽ đăng! Tôi đã không dành đủ giờ cho P.SE, rõ ràng.
Martijn Pieters

@MartijnPieters ::
vartec

8
Tiêu đề tuyệt vời cho một cuốn sách! Tôi không thể chờ phần tiếp theo, "Dạy bản thân để lập trình tốt trong 20 năm!"
GlenPeterson

16
Tuy nhiên, bạn phải đảm bảo rằng bạn không lặp lại 10 giờ giống nhau 1000 lần ...
Izkata

Không có chuyên môn kỹ thuật sẽ giúp ai đó biết tự động hóa hoặc tạo chương trình để làm gì. Điều này giống như nói - đi đến phòng tập thể dục và thực hiện mọi bài tập cơ bản trong bóng rổ trong mười năm, trong 1 giờ mỗi ngày. Gặp sự cố! Bạn là một siêu sao bóng rổ (bậc thầy) ... không, nó không chỉ là kỹ năng kỹ thuật. Do đó, tôi không coi đây là câu trả lời cho câu hỏi, tức là làm thế nào để trở thành bậc thầy? Đây có thể là một phần của giải pháp, nhưng nó không phải là thần dược cho quyền làm chủ. Tôi biết - tôi không phải là bậc thầy!
oemb1905

36

KHÔNG BAO GIỜ coi mình là bậc thầy của toàn bộ ngôn ngữ cho đến khi bạn thực hiện một ngôn ngữ tốt hơn thế. Điều đó có nghĩa là, để tìm hiểu cách thức một ngôn ngữ cụ thể hoạt động từ bên dưới, hãy lấy một cuốn sách dạy cho bạn các khái niệm trình biên dịch / thông dịch viên của ngôn ngữ. Ví dụ:

  • C: Cuốn sách Trình biên dịch LCC

  • C ++: Thiết kế và tiến hóa của C ++ (Và sau đó tiếp tục xây dựng trình biên dịch C ++ của riêng bạn hoặc ít nhất hiểu được việc triển khai một trình sử dụng mã Trình biên dịch GNU C ++)

  • Java: Nhận "Inside JVM" và lấy mã nguồn javac. Mã .C của "java" cũng hữu ích

  • Python: Thực hiện CPython.

  • ObjectiveC: Hầu như bất kỳ tài liệu nào từ Apple về nội bộ của mã nguồn trình biên dịch và trình biên dịch ObjC sẽ giúp bạn.

  • Lisp: SICP Book (dạy cho bạn Scheme và một trình biên dịch phiên dịch cơ bản cho ngôn ngữ giống như ngôn ngữ): Lisp in Small Pieces (một cuốn sách hay khác).


1
Bây giờ đây là những gì tôi gọi là một câu trả lời. Tôi đã chấp nhận một câu nhưng điều này sẽ xứng đáng là "câu trả lời hay nhất" nếu sớm hơn một chút
cprogcr

2
Bạn không biết câu trả lời của bạn đã giúp được bao nhiêu. Tôi đang đọc về những cuốn sách bạn đề cập và chúng là những thứ tôi cần.
cprogcr

hehe tôi học được từ họ Vui mừng được giúp đỡ :-)
Aniket Inge

kể từ khi bạn đề cập đến C làm ví dụ, hãy để tôi cung cấp cho bạn tên của hai cuốn sách nữa, như một món quà, mà tôi đã sử dụng để làm chủ C như mu bàn tay của tôi): 1. OOC.PDF (có sẵn miễn phí trên mạng) và 2. Sách Minix (mặc dù là sách của người triển khai HĐH, đây là những gì Linus Torvalds đã đọc trước khi triển khai Linux)
Aniket Inge

1
yeah của Andrew Tenenbaum, đó là cuốn sách. Bất kỳ phiên bản là tốt để đọc. Nó không cho bạn biết "C" hoạt động như thế nào, nhưng khi bạn thấy thư viện C được triển khai để hoạt động như thế nào với hệ điều hành do BẠN xây dựng, bạn bắt đầu hiểu C thậm chí còn tốt hơn! Có lẽ đủ để cho phép bạn sửa đổi nó. (Và đó là nơi OOC xuất hiện)
Aniket Inge

12

Hãy thử sử dụng ngôn ngữ cho thứ mà nó không có ý định sử dụng. Viết trình điều khiển thiết bị bằng Python hoặc thư viện thao tác ma trận trong COBOL. Tôi nghĩ một trong những cách tốt nhất để thành thạo một ngôn ngữ là thực sự thúc đẩy nó, cố gắng làm cho điểm mạnh của nó khắc phục điểm yếu của nó.


1
Khi tôi học đại học, tôi sẽ quyết định rằng tôi sẽ "thành thạo" một ngôn ngữ một khi tôi đã viết tiếng Pông trong đó. Điều này làm việc khá tốt cho đến khi tôi học MIPS. Tôi vẫn gặp ác mộng.
Roddy of the Frozen Peas

Website trong C có thể làm được?
BigSack

10

Tôi sẽ làm cho nó dễ dàng với bạn. Bạn sẽ không bao giờ thành thạo một ngôn ngữ. Giai đoạn = Stage. Nếu bạn nghĩ rằng bạn có, thì rõ ràng bạn không có. Không có đỉnh núi nào bạn đột nhiên chạm tới và nói "Chà, bây giờ, tôi đã hoàn toàn làm chủ ngôn ngữ đó. Bây giờ thì sao?" Ngay cả những lập trình viên dày dạn kinh nghiệm, những người đã làm việc với cùng một ngôn ngữ trong nhiều thập kỷ sẽ nói với bạn rằng đôi khi họ vẫn chạy theo những ý tưởng, quy trình, thực tiễn mới, v.v. Mục tiêu thực sự là làm chủ sự hiểu biết về ngôn ngữ hoặc ngôn ngữ của bạn. Khả năng tìm hiểu các khái niệm mới và tốc độ bạn có thể áp dụng các tính năng mới hoặc thay đổi trong ngôn ngữ quan trọng hơn nhiều so với kiến ​​thức vẹt về mọi từ khóa và cú pháp. Ngừng lo lắng về việc "làm chủ" một ngôn ngữ và chỉ cần lo lắng về việc liên tục cải thiện và cải tiến chất lượng và hiệu quả của mã của bạn.


2
The true goal is to master your conceptual understanding of a language or languages.Chính xác. Đó là những gì tôi thực sự có ý nghĩa.
cprogcr

Bất kỳ ngôn ngữ lập trình là hữu hạn. Nó được xây dựng với số lượng khái niệm hữu hạn, đòi hỏi một số lượng hữu hạn các thủ thuật thành ngữ. Do đó, thật dễ dàng để làm chủ bất kỳ ngôn ngữ. Tất nhiên, người ta không thể thành thạo lập trình nói chung, luôn có tiềm năng cải tiến hơn nữa, nhưng câu hỏi cụ thể là về một ngôn ngữ nhất định .
SK-logic

SK-logic: ngôn ngữ lập trình thay đổi, và các thư viện và môi trường của chúng cũng vậy. Kết quả là cách bạn làm việc với ngôn ngữ cũng thay đổi. Ví dụ, jQuery đã thay đổi cách chúng ta làm việc với Javascript.
orlp

Có lẽ đúng là không ai có thể thực sự thành thạo một ngôn ngữ như C ++, nhưng đối với những ngôn ngữ hơi tối giản như Scheme thì hoàn toàn có thể - như @ SK-logic nói, đó thực sự là lập trình , trong bất kỳ ngôn ngữ nào, không thể thành thạo, bởi vì lĩnh vực ứng dụng là vô hạn.
leftaroundabout

1
@nightcracker, ngôn ngữ không "phát triển". C99 sẽ luôn là C99 và sẽ không bao giờ thay đổi. C ++ 11 sẽ luôn duy trì C ++ 11, ngay cả sau khi nó được thay thế bởi ngôn ngữ thế hệ tiếp theo. Các môi trường "phát triển", vâng, nhưng jQuery không giới thiệu bất kỳ kỹ thuật mới nào chưa được biết đến trước đây cho các cộng đồng ngôn ngữ khác . Chúng chỉ mới đối với cộng đồng Javascript hẹp.
SK-logic

5

Bạn đã biết câu trả lời cho điều này

  • Bạn phải sử dụng ngôn ngữ. Rất nhiều. Để giải quyết càng nhiều vấn đề càng tốt
  • Bạn phải đọc (và, lý tưởng nhất là làm việc với) mã người khác, tốt nhất là những người có mức độ thành thạo (nghĩa là hiểu sâu về ít nhất một số khía cạnh của ngôn ngữ). Bằng cách mở rộng, nếu bạn có thể nói chuyện với mọi người về việc giải quyết vấn đề với ngôn ngữ thì càng nhiều càng tốt.

Nó làm việc chăm chỉ và quyết tâm và cho tất cả những gì bạn có thể không bao giờ đạt được.

Hãy nghĩ về nơi chúng ta có thuật ngữ - để trở thành một Thợ thủ công bậc thầy, bạn phải là người học việc và sau đó là một người hành trình và chỉ họ mới có cơ hội trở thành bậc thầy. Trên đường đi, bạn sẽ được dạy và bạn sẽ thực hành và bạn sẽ quan sát và đặt câu hỏi cho những người khác tại nghề của họ và (hy vọng) học hỏi từ họ.

Không có viên đạn ma thuật ...


2

Bắt đầu bằng cách đọc và hiểu SDLC là gì (hay còn gọi là vòng đời phát triển phần mềm). Đây là một quá trình lặp đi lặp lại bao gồm tự cải thiện, học tập,**practicing, practicing...**

nhập mô tả hình ảnh ở đây

Điều đó sẽ mở ra tầm nhìn của bạn về những lĩnh vực bạn cần học hỏi hoặc cải thiện. Có một số sách kỹ thuật phần mềm cốt lõi mà bạn cũng sẽ thấy rất hữu ích để đọc một khi bạn tự xây dựng một vài ứng dụng.

Ngoài ra, khi bạn sẽ cảm thấy tự tin với một ngôn ngữ OOP , bạn có thể bắt đầu tìm hiểu các mẫu thiết kếmô hình Head First Design thực sự là cuốn sách tốt để xem xét. Tôi yêu quyển sách này.


1
Cảm ơn. Tôi đã chọn câu trả lời khi tôi đọc nó nhưng chắc chắn sẽ nghe lời khuyên của bạn.
cprogcr

không chắc chắn tại sao bỏ phiếu xuống, xin vui lòng cho tôi biết những gì cần được cải thiện.
EL Yusubov

2

Không có thay thế cho kinh nghiệm. Để thành thạo một cái gì đó, bạn phải làm / sử dụng nó, nhiều, cho nhiều thứ khác nhau.

Vì vậy, hãy tiếp tục và sử dụng ngôn ngữ đó cho các bài tập (như Project Euler ) và các dự án cá nhân, những thứ bạn thực sự cần hoặc những thứ bạn nghĩ là thú vị. Viết một trò chơi, viết một ứng dụng web, viết một trình phân tích cú pháp, bất cứ điều gì bạn thích. Và ở mỗi bước, hãy cố gắng hiểu những gì bạn đang làm thay vì chỉ dán mã hoặc làm theo hướng dẫn.

Tôi muốn có thể đọc mã của người khác và hiểu nó, bất kể nó khó đến mức nào.

Đó là điều bạn có thể làm ngay khi bạn hiểu cú pháp cơ bản. Chỉ cần lấy một số mã và dành thời gian để tìm ra nó một cách chi tiết. Tra cứu những thứ bạn không hiểu hoặc đặt câu hỏi cụ thể ở những nơi như Stack Overflow .


2

Ở cấp độ cao của vấn đề, tìm hiểu về kiến ​​trúc: cách tổ chức các dự án của bạn, cấu trúc của nó là gì. Đừng để chúng phát triển ngẫu nhiên.

Ở cấp độ trung bình, tìm hiểu các kỹ thuật và mô hình khác nhau. Bạn càng có nhiều công cụ đa dạng trong tiết mục của mình, bạn càng có nhiều sức mạnh. Nếu bạn chỉ nghiên cứu java, python và ruby, bạn đã tiếp xúc với một phần rất nhỏ của không gian lập trình. Học lập trình cấp bách và chức năng, học prolog và J. Ý tưởng không phải là "làm chủ" hàng trăm ngôn ngữ, mà là tìm hiểu về các cách khác nhau để giải quyết cùng một vấn đề.

Ở mức độ thấp của vấn đề, một điều có thể giúp bạn trở thành một lập trình viên giỏi hơn (thực tế là tốt hơn bất cứ điều gì bạn làm) là có một mô hình tinh thần tốt về nền tảng. Ví dụ: bạn có thể tìm hiểu cách các cấu trúc điều khiển C hoạt động và biết các thư viện phổ biến nhất, nhưng nếu bạn không có mô hình tinh thần về cách con trỏ và bộ nhớ hoạt động, thì bạn sẽ gặp rắc rối với các biểu thức phức tạp vừa phải.


1

Tôi có thể đưa ra một vài gợi ý?

Đầu tiên, nếu bạn có thể tìm một người cố vấn để thảo luận về việc sử dụng ngôn ngữ của bạn, và để có được những mẹo và thủ thuật tốt nhất, và để trả lời khi một kỹ thuật này tốt hơn một kỹ thuật khác.

Thứ hai, thực hành càng nhiều càng tốt và thử ngôn ngữ đến mức tối đa! Tôi đã từng làm việc trong một nhóm, điều đó (như một vấn đề thú vị) sẽ chọn ra một động từ hoặc một phần khác của ngôn ngữ lập trình từ sách hướng dẫn mỗi ngày. Đó là một dấu hiệu của danh dự nếu bạn có thể đưa nó vào mã hóa của mình ngày hôm đó. Điều này có nghĩa là toàn bộ nhóm lập trình cần phải xem xét và hiểu thuật ngữ (đôi khi) tối nghĩa để hiểu và sử dụng nó một cách hiệu quả. Một số ngày chúng tôi thất bại, nhưng nhóm đó rất vui khi làm việc và thực sự bật kỹ thuật !!


0

Ngôn ngữ lập trình phản ánh các ý tưởng đằng sau các mô hình lập trình được phát triển nhắm mục tiêu phát triển phần mềm cho mục đích chung hoặc để phát triển phần mềm có mục đích đặc biệt. Ví dụ, một ngôn ngữ chương trình như Java đại diện cho mô hình chương trình hướng đối tượng, nhưng AspectJ (một phần mở rộng của Java) được sử dụng để lập trình theo lập trình hướng theo khía cạnh.

Với phần giới thiệu ngắn này, để thực sự thành thạo một ngôn ngữ, việc tự mình mua và đọc một cuốn sách sẽ không hữu ích lắm. Bạn cần hiểu môi trường mà bạn có thể lập trình bằng ngôn ngữ mong muốn, tìm hiểu về mô hình và quan trọng hơn là xây dựng một ứng dụng có ý nghĩa bằng ngôn ngữ. Xây dựng một ứng dụng nhỏ có thể cung cấp cho bạn một hương vị của các công cụ khác nhau được cung cấp bởi ngôn ngữ là một phương pháp học tập thực sự hữu ích.

Tôi đã thấy những người đến từ cộng đồng C thuần túy mà không học được gì về định hướng đối tượng và đấu tranh trong việc học Java hoặc object-c. Tôi cũng đã thấy mọi người đấu tranh với lập trình giao diện người dùng khi họ chưa thực sự hiểu về các yếu tố giao diện người dùng, lập trình hướng sự kiện, v.v ...

Tôi hi vọng cái này giúp được!


0

Tôi sẽ thêm hai mục vào danh sách của Glen

  • Cố gắng giải quyết vấn đề khó khăn mà người khác có, ví dụ như đưa ra câu trả lời về SO
  • Đọc các nhà thiết kế ngôn ngữ blog / cuốn sách. Đó là nguồn tài nguyên kiến ​​thức sâu sắc nhất. Bạn sẽ biết quyết định thiết kế đằng sau lý do X.

0

Để xây dựng dựa trên những gì @TMN đã nói. Tôi đã thành công lớn trong việc học ngôn ngữ bằng cách viết cùng một chương trình bằng một ngôn ngữ khác.

Ví dụ: viết chương trình đọc trong tệp CSV, phân tích văn bản và sau đó ghi lại vào CSV thứ hai với các cột theo thứ tự ngược lại.

Như thế này,

Cột1, Cột2, Cột3

đến

Cột 3, Cột2, Cột1

Điều này sẽ giúp bạn có một sự hiểu biết cơ bản hoặc ngôn ngữ. Sau đó xem những gì bạn có thể làm. Có thể cho phép thay thế giá trị hoặc sắp xếp lại hoặc đọc từ dòng lệnh. Làm cho nó phức tạp như bạn muốn.

Ngoài ra tôi nghĩ những gì @GlenPeterson nói về,

Học một ngôn ngữ rất khác. Một lời khen tuyệt vời cho C sẽ là một ngôn ngữ chức năng như Lisp. Điều này sẽ biến cách bạn nghĩ về ngôn ngữ thủ tục của bạn từ trong ra ngoài.

Là một ý tưởng tuyệt vời. Tôi muốn đề xuất một ngôn ngữ như Haskell vì trong các phiên bản mới nhất, bạn có thể lập trình bằng cả bốn mô hình lập trình OO, theo thủ tục, logic hoặc chức năng. Mặc dù nó thực sự là một ngôn ngữ chức năng mà bạn có thể với một số nỗ lực thực hiện các mô hình khác sẽ là một kinh nghiệm học tập tốt.

Ngôn ngữ tuyệt vời để chơi xung quanh với.


0

Bạn không thể học một ngôn ngữ từ cuốn sách. Tất cả bạn cần là thực hành và thực hành. Đừng nghĩ Bạn có thể học một ngôn ngữ từ cuốn sách cụ thể hoặc nguồn cụ thể đó. Bạn nghĩ rằng ngôn ngữ lập trình giống như ngôn ngữ của con người. Bạn không thể học tiếng Anh hoặc tiếng Pháp bằng cách đọc một cuốn sách cụ thể. cuộc sống hàng ngày. Mã từ đầu, mở rộng chức năng của nó cố gắng xây dựng một cái gì đó sẽ khiến bạn hài lòng một chút. Và nếu bạn đang suy nghĩ thành thạo một ngôn ngữ như biết toàn bộ ngôn ngữ và sử dụng từng yếu tố của ngôn ngữ lập trình trong mã hóa thực tế .. BẠN KHÔNG THỂ. Hoặc thậm chí nếu bạn có thể mất 10 đến 15 năm.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.