Kỹ thuật tăng logic khi lập trình [đóng]


21

Tôi tham gia lập trình từ 3 năm trước. Nhưng tôi dường như bị lạc trong đó. Tôi không thể có được nó tốt mặc dù tôi viết mã hàng ngày.

giả sử tôi giải quyết một vấn đề, tôi sẽ đi lang thang từ giải pháp này sang giải pháp khác và thực hiện một số giải pháp khác. Tôi không thể tập trung nhiều. Tôi nhận được nhiều khiếm khuyết cho mã tôi viết. Tôi sợ mã Tôi không biết tại sao nếu tôi không hoàn thành nó đúng hạn, sếp của tôi sẽ sa thải tôi, v.v. Tôi thích mã hóa nhưng không phải lúc nào cũng vậy. Làm thế nào để tăng tính kiên nhẫn?

Tôi luôn tự hỏi làm thế nào để tôi trở thành lập trình viên giỏi nhất như nhiều lập trình viên xuất sắc. Tôi biết điều này nghe có vẻ chủ quan nhưng tôi nghĩ rằng điều này sẽ giúp cộng đồng lập trình viên giỏi về nó đặc biệt là đối với những người lập trình trung bình như tôi hoặc người mới bắt đầu.


8
Đó là thông thường để cảm thấy theo cách này. Không phải tất cả chúng ta sẽ viết trình biên dịch hoặc sẽ là lập trình viên khó tính. Tôi không được đào tạo chính thức về lập trình, nhưng giải quyết vấn đề là chìa khóa. Với công nghệ thay đổi trên cơ sở rất nhanh, rất khó để ở trên mặt nước. Tôi cố gắng hướng tới sự cải tiến liên tục. Đó là mục tiêu của tôi. Hiểu nghề này rất khác, cố gắng làm tốt nhất bạn và tiếp tục tiến về phía trước. Tôi luôn dành một chút thời gian mỗi tuần để học hoặc hiểu một cái gì đó mới. Chỉ cần bạn giữ thái độ đó, bạn sẽ trở nên tốt hơn.
Jon Raynor

Tôi sợ mã ... nếu tôi không hoàn thành nó đúng hạn, sếp của tôi sẽ sa thải tôi, v.v. - Đó không phải là một môi trường tuyệt vời để tận hưởng, và do đó trở nên tốt hơn trong việc lập trình.
Paul D. Chờ

@ PaulD.Waite Đúng, nó không tuyệt vời nhưng rất phổ biến.
Pramesh Bajracharya

Câu trả lời:


12

Cá nhân tôi sẽ đề nghị bắt đầu với những rào cản nhỏ hơn; hãy thử tham gia viết mã trong các phần nhỏ hơn và nhận được nhiều hơn vào các chiến thắng trung gian. Có vẻ như bạn sẽ bị choáng ngợp hoặc buồn chán nếu một cái gì đó kéo dài quá lâu hoặc không cho thấy sự tiến bộ. Tôi có thể nói dứt khoát tôi đã ở trên cùng một chiếc thuyền.

Hãy nghĩ về nó giống như xử lý một chiếc bánh sandwich: Bạn không ăn toàn bộ trong một miếng, bạn làm hỏng nó. Thực hiện tương tự với các dự án, nhiệm vụ của bạn, v.v. Tùy thuộc vào cấp độ của bạn, bạn có thể muốn yêu cầu người giám sát / quản lý của bạn chia nhỏ nó cho bạn. Nếu bạn chịu trách nhiệm về khối lượng công việc của riêng mình, hãy đặt các dòng kết thúc nhỏ cho bản thân có thể hoàn thành được (không đặt mục tiêu bạn sẽ không bao giờ đạt được, điều này chỉ khiến bạn nản lòng hơn và đặt bạn vào vị trí không mong muốn). tức là "Đến trưa tôi muốn xác định lớp này", "Đến 2 tôi muốn giao diện này được triển khai", v.v.

Công ty của tôi nổi tiếng với việc bắt đầu và bắt đầu một dự án, cho phép tôi đạt được 90%, sau đó trượt tấm thảm từ bên dưới tôi để chuyển sang "điều lớn tiếp theo". Tôi bắt đầu chán nản rằng tôi không bao giờ hoàn thành được bất cứ điều gì và đưa tôi vào một "funk" (nếu bạn muốn). Cuối cùng tôi lùi lại và nói với họ rằng tôi sẽ không tiếp tục cho đến khi tôi hoàn thành những gì tôi sắp hoàn thành. Điều này đã làm nên điều kỳ diệu cho lòng tự trọng, đạo đức và năng lượng của tôi (mặc dù tôi không thể nói như vậy về chủ nhân của mình: nhún vai :)


7

Đề nghị của tôi sẽ có được một người cố vấn.

Khi bạn nhận được một dự án mới, hãy quyết định con đường bạn sẽ đi: thiết kế tổng thể trông như thế nào; bạn sẽ sử dụng thuật toán nào; Làm thế nào để bạn có kế hoạch phát triển nó để bạn có thể kiểm tra sớm và thường xuyên; vân vân.

Mang những kế hoạch này đến người cố vấn của bạn và nói chuyện với anh ấy / cô ấy. Nếu họ thấy bạn đang đi sai đường hoặc bạn đã bỏ lỡ điều gì đó quan trọng, hãy xem lại kế hoạch của bạn và thử lại.

Bây giờ bạn đã có một kế hoạch được phê duyệt, hãy tuân thủ nó. Đừng thay đổi kế hoạch của bạn trừ khi có điều gì đó hoàn toàn thảm hại xảy ra, và sau đó quay lại để sửa đổi kế hoạch của bạn, nhận được phê duyệt và khởi động lại. Nếu không, hãy bám sát kế hoạch của bạn và hoàn thành chính xác những gì bạn đã quyết định làm. Kiểm tra với người cố vấn của bạn theo định kỳ để xác nhận việc thực hiện của bạn và đảm bảo bạn viết và sử dụng các bài kiểm tra trên đường đi.

Nếu bạn đã thực hiện thành công tất cả những điều trên, bạn sẽ giao dự án đúng thời hạn và có kết quả chính xác. Nếu bạn muốn quay lại và cấu trúc lại một phần của dự án, bạn có tất cả các thử nghiệm bạn đã xây dựng cũng như một bản sao làm việc của chương trình để xây dựng.

Tôi nghe có vẻ như bạn hơi quá phân tán và thiếu tập trung. Có lẽ nếu bạn có thể sửa chữa những khu vực đó và làm việc với ai đó mà bạn tôn trọng, bạn sẽ sớm đi đúng hướng.

Nhưng điêu tôt đẹp nhât se đên vơi bạn.


6

Tôi tin rằng tôi đang ở vị trí chính xác như bạn và thật tuyệt khi ở đó. Đôi khi nó có thể làm mất tinh thần và thành thật khá buồn. Tuy nhiên, như với bất cứ điều gì tôi tin rằng có một số điều bạn có thể làm để giúp giảm bớt điều này và do đó tiến tới một sự nghiệp làm việc lành mạnh và hạnh phúc hơn.

  1. Bạn phải muốn thay đổi và trở nên tốt hơn. Nếu bạn đang cảm thấy như vậy nhưng không sẵn sàng đưa vào các sân cứng để cải thiện kỹ năng thì không có bất kỳ công cụ / quy trình nào có thể làm cho bạn.

  2. Một số người tự nhiên rực rỡ. Một số người làm việc chăm chỉ để được rực rỡ. Hầu hết mọi người chỉ cần làm việc chăm chỉ để phấn đấu để được rực rỡ. Nếu bạn không có tài năng tự nhiên (lập trình hay nói cách khác), thì công việc khó khăn có thể đưa bạn đến đó. Chỉ cần mức độ làm việc chăm chỉ sẽ khác nhau. Không có gì là không thể.

  3. Chấp nhận sự thiếu sót của bạn và tìm cách cải thiện. Một trong những rào cản lớn nhất mà tôi thấy là những người ngại chấp nhận rằng cách của họ không phải là một cách tốt và vì vậy đừng bao giờ tìm kiếm lời khuyên hoặc thảo luận về những cách làm việc khác. Do đó, họ không bao giờ học được các thực hành tốt hơn và vì vậy tiếp tục mắc lỗi lặp đi lặp lại.

  4. Hãy hỏi lời khuyên từ những người bạn coi là lập trình viên giỏi. Đừng bao giờ ngại nói chuyện và hỏi lời khuyên từ đồng nghiệp. Tuy nhiên, luôn luôn lấy lời khuyên của họ theo mệnh giá và tự quyết định xem bạn có đồng ý với nó hay không. Không quan trọng là ai đó xuất sắc như thế nào, luôn có nhiều cách để lập trình một vòng lặp.

  5. Đọc đọc đọc. Đọc các nhóm tin tức. Gửi câu hỏi trên các trang web như thế này (cũng được thực hiện). Mua sách bạn đã nghe là tốt, hoặc hỏi khác cho các khuyến nghị.

  6. Explility áp dụng các nguyên tắc thiết kế trong các bước nhỏ và sau đó tự hào về những gì bạn đã làm. Nếu bạn tự hào về những gì bạn viết mã thì ít có khả năng có chỗ cho các lỗi và lỗi.

  7. Mở để được gợi ý và giúp đỡ. Đóng cửa để suy nghĩ một chiều. Hãy cởi mở với nhiều khả năng và phương pháp. Xem ra cho những người nghĩ rằng có một cách cho tất cả mọi thứ. Một chút như 4.

  8. Trở thành một lập trình viên xuất sắc không giống như một nhân viên xuất sắc. Nếu trở thành một lập trình viên xuất sắc là tất cả những gì bạn muốn, thì thành thật mà nói bạn có thể không bao giờ đạt được điều đó. Tuy nhiên mọi người đều có khả năng tôi tin là một nhân viên và người xuất sắc. Làm việc trên những thứ có thể giúp bạn đạt được điều đó.


Câu trả lời chính xác. Âm thanh như những điểm này đến từ một người cố vấn tuyệt vời. Để ý tôi đi !! _ / _
Pramesh Bajracharya

4

Nếu sau 3 năm viết mã hàng ngày, bạn đang vật lộn với những điều cơ bản, bạn cần nghiêm túc xem xét khả năng đây không phải là nghề phù hợp với bạn.

Đây không phải là một điều xấu. Lập trình không dành cho tất cả mọi người, hãy tìm những gì bạn giỏi và làm điều đó, thay vì ép buộc một cái gì đó lên chính mình, điều đó không tự nhiên.

Nếu những gì bạn đang nói là đúng .. bạn sẽ không bao giờ là một "lập trình viên xuất sắc". Không sao, cứ chấp nhận đi.


Bình luận viên : ý kiến ​​có nghĩa là để tìm kiếm làm rõ, không phải để thảo luận mở rộng. Nếu bạn có giải pháp của riêng mình, hãy để lại câu trả lời. Nếu bạn nghĩ rằng câu trả lời này là tốt, hãy bỏ phiếu. Nếu bạn không nghĩ nó tốt, hãy bỏ phiếu. Nếu bạn muốn thảo luận câu hỏi này với người khác, vui lòng sử dụng trò chuyện . Xem FAQ để biết thêm thông tin.

Thôi nào, không ai trở thành "ngoại lệ" trong ba năm.
JacquesB

3

Cố gắng có được cho mình vào một dòng trạng thái của tâm. Đó là yếu tố quan trọng nhất tôi từng thấy là một nhà phát triển giỏi. Để làm điều này, bạn cần phải thực hiện những thách thức mà bạn biết bạn có thể làm, nhưng rất khó. Bạn cần tìm ra mức độ thử thách phù hợp để hòa mình vào đó; sau đó bạn có thể tăng dần nó khi bạn trở nên tốt hơn. Có những nhiệm vụ quá dễ hoặc quá khó sẽ gây bất lợi.


3

Chia nó thành nhiều phần nhỏ.
Hãy để tôi chứng minh bằng cách sử dụng bánh sandwich PB & J.

Chỉ ra quá trình cơ bản tổng thể.

1 - Get Ingredients
2 - Combine Ingredients
3 - Cut Sandwich
4 - Serve Sandwich

Sau đó phá vỡ từng thứ

**Get Ingredients**
1 - Validate/Create PB
1.1 - Validate/Create Jelly
1.2 - Validate/Create Bread
2 - Move PB To assembly area
...

lặp lại quá trình phá vỡ cho đến khi bạn hoàn toàn hiểu logic liên quan.

Điều này sẽ làm cho nó dễ hiểu hơn. Và dễ dàng hơn để idenitfy quá trình phổ biến. Trước khi bạn bắt đầu viết mã, hãy chắc chắn rằng bạn đã tìm ra logic. Làm sai không chỉ là ok nó được mong đợi. Tìm kiếm chúng trước khi bạn thực hiện chúng là dễ dàng hơn nhiều để sửa chữa.

Thông thường logic là phần khó nhất của lập trình. Đó là lý do tại sao không phải ai cũng muốn làm điều đó. Nếu bạn không thích logic nhưng yêu thích Thiết kế giao diện người dùng, có những vai trò chuyên về điều đó, nơi bạn có thể tìm thấy nhiều sự thích thú hơn. Chẳng có vấn đề gì với việc đấy cả. Cá nhân tôi thích logic hơn UI. Cũng có những vai trò khác nếu logic không phải là nơi bạn muốn tìm ra nơi bạn muốn.


2

Tôi đã có loại vấn đề này trước đây .. Nó đã xảy ra ngay trước khi tôi kiệt sức và không thể lập trình ở mức sản xuất trong gần một năm sau đó (và lúc đó tôi chỉ mới 19 tuổi).

Dù sao, nhìn lại nó, vấn đề tôi gặp phải là thiếu định hướng và quản lý. Tôi đang làm việc để thực hiện một cái gì đó trong một hoặc hai tháng và sau đó khi nó gần hoàn thành, đột nhiên nó cần được thực hiện theo một cách hoàn toàn khác. Đây là một cú đánh mạnh vào lòng tự trọng của tôi vì tôi khá tự hào về mỗi dòng mã tôi viết. Ngoài ra, ban quản lý bao gồm chủ yếu là một vài giờ thảo luận về việc một cái gì đó nên hoạt động như thế nào và sau đó một vài ngày không thảo luận bất cứ điều gì. Một số điều này là lỗi của tôi là tất nhiên. Điều này cũng được kết hợp bởi thực tế là đến một lúc nào đó công việc trở nên vô cùng tẻ nhạt và tôi cảm thấy như mình chỉ đang gõ mã và không thực sự sáng tạo chút nào.

Hướng dẫn chung:

  1. Nếu bạn cảm thấy thiếu phương hướng, hãy đưa nó lên. Hỏi cấp trên của bạn để biết thêm cấu trúc trong đó mọi thứ đang diễn ra
  2. Nếu bạn phải xóa mã mọi lúc (và không phải theo cách tốt như tái cấu trúc), hãy đặt câu hỏi nghiêm túc tại sao không có kế hoạch hoàn chỉnh hơn được xây dựng trước khi thực hiện
  3. Nếu bạn ở trong một khởi đầu siêu nhỏ và hoạt động như một nhà phát triển "dẫn đầu", khi bạn rõ ràng không có kinh nghiệm về nó, hãy nuốt niềm tự hào của bạn và nói với người quản lý của bạn rằng bạn thực sự là một nhà phát triển cơ sở.
  4. Tedium thường được mang đến bởi sự xuất hiện của không có công việc nào được thực hiện. Thực hiện các nhiệm vụ của bạn trong các vết cắn nhỏ hơn và theo dõi tiến trình của bạn. Điều này sẽ giúp cảm thấy rằng bạn đang hoàn thành một cái gì đó
  5. Nếu vẫn thất bại, bạn có thể muốn bắt đầu nộp đơn ở nơi khác, đặc biệt nếu người quản lý của bạn dường như không quan tâm rằng bạn có thể đang hướng đến sự kiệt sức

-1

Tìm một trò chơi logic quy nạp như Zendo và chơi nó trong thời gian rảnh rỗi. Nghiêm túc. Logic cảm ứng là trái tim của gỡ lỗi.

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.