01/10/2018, 16:56

Lập trình chỉ là if else thôi ạ?

Em học lập trình 1 năm qua chỉ thấy toàn sử dụng if,else,else if,loop thấy nó cứ kém kém kiểu gì đó.Có kiểu lập trình nào hay hơn không ạ?Chứ 1 chương trình lớn chỉ là tập hợp của nhiều câu lệnh rẽ nhánh thì tấm thường quá.

Nguyễn Đình Anh viết 19:12 ngày 01/10/2018

Tạo sao bạn lại nghĩ if,else,else if,loop Là tầm thường và kém kém ?? Theo bạn thì một chương trình thế nào thì mới là cao siêu ?

anon52681320 viết 19:10 ngày 01/10/2018

Cũng muốn lắng nghe xem bạn Khanh này expect điều gì mới làm nên chương trình cao siêu, ghê gớm.

Songtotnhe viết 19:05 ngày 01/10/2018

1 chương trình lớn chỉ là tập hợp của nhiều câu lệnh rẽ nhánh

Sai hoàn toàn nha bạn.

Bạn cứ học tiếp đi sẽ thấy, sau này còn nhiều món hay lắm.

Văn Dương viết 19:08 ngày 01/10/2018

Học lập trình 1 năm rồi mà thế này sao trời @@.
Thần đồng đây òy !

rogp10 viết 19:01 ngày 01/10/2018

Chứ 1 chương trình lớn chỉ là tập hợp của nhiều câu lệnh rẽ nhánh

Do cách bạn học, chứ giáo trình nào mà tù vậy

Vuio viết 19:08 ngày 01/10/2018

Em học lập trình 1 năm qua chỉ thấy toàn sử dụng if,else,else if,loop

Là bạn tự học hay có người dạy ?
Bạn nên tự học, tự tìm hiểu thêm sẽ thấy nhiều cái thú vị chứ không chỉ là những thứ bạn cho là kém kém kiểu gì đó

Aragami1408 viết 18:57 ngày 01/10/2018

Bạn mới là tầm thường chứ đừng nói lập trình là tầm thường. Không có lập trình thì sao bạn vẫn vô đây chém gió với mọi người được? Bạn đã học xong cơ bản về lập trình chưa mà bạn dám nói vậy?

Madafaker viết 19:01 ngày 01/10/2018

đơn giản là số 0 và 1 thôi chứ không phải if else nếu bạn thấy tầm thường quá thì chuyển sang học mã máy đi không dùng if else nhiều đâu…

ColourGuy.Com viết 19:08 ngày 01/10/2018

Lập trình thì đúng chỉ là if else với loop thôi chứ sao, như kiểu ngôi nhà có đẹp đến đâu chẳng qua cũng chỉ là làm nên từ những viên gạch hay cùng lắm là đá + với sắt thép.
Mấy cái đó có thể bình thường, nhưng không tầm thường. Nó chỉ tầm thường, khi kẻ cầm những viên gạch đó cũng là kẻ tầm thường mà thôi.

viết 19:02 ngày 01/10/2018

Cảm giác như này, khi mới vào nghề, ai cũng có thể từng gặp phải, không chỉ lập trình, mà nghề khác cũng vậy.

Người ta học, thấy không hiểu, có thắc mắc thì lên hỏi. Anh chị em không giải thích thì thôi, mà còn bu vào chê bai người hỏi, thay vì suy nghĩ để hiểu vì sao người ta lại hỏi vậy.

Chánh Huỳnh viết 19:05 ngày 01/10/2018

Có thể anh ấy rất cao siêu thấy những thứ này tầm thường nên muốn hướng đến những thứ cao siêu hơn. Cũng có thể anh ấy học chưa sâu vào nên thấy nó đơn giản. Nhưng mà cách anh ấy nói có vẻ như là xem thường lập trình chứ không phải là 1 câu hỏi hay thắc mắc ạ. Đó là ý của em, có gì anh chị góp ý ạ

viết 18:57 ngày 01/10/2018

có cái cao siêu hơn nhóe, ví dụ như state machine. Áp dụng điển hình là regular expression: muốn xét password có chứa chữ hoa, chữ thường, chữ số và chữ đặc biệt hay ko, thay vì if else for while, chỉ cần xài 1 dòng regex là xong. Regex là FSM, finite state machine. Còn có state machine “mạnh” hơn nữa là pushdown automaton, ví dụ áp dụng trong game khi em bấm “pause” là nó push 1 state mới lên stack chứa các state. Thay vì phải kiểm tra if else có pause hay ko để vẽ các hình tương ứng, ở đây em chỉ cần push pop cái states stack là xong. Đương nhiên vẫn có if else trong state machine nhưng thay vì viết 100 cái if else ở ngoài main(), em chỉ viết 2-3 cái if else trong state machine thôi.

cái cao siêu hơn nữa là nhân ma trận gì đó, áp dụng trong machine learning. ML ko phải là if else ko mà nó xài ma trận tích phân vi phân toán học cao siêu gì đó để thống kê tìm ra cách dụ người tiêu dùng mua hàng ko cần thiết Ko biết bao nhiêu tiến sĩ thạc sĩ nghiên cứu ngành này để dẹp bỏ if else đó.

Bien Khanh viết 18:57 ngày 01/10/2018

cái này đúng là thú vị nè

viết 19:05 ngày 01/10/2018

em ko thích if else thì khi viết code tìm cách đừng xài if else.

ví dụ tính số ngày trong tháng: thay vì xài if else switch case em có thể xài look-up table, tức là tạo 1 cái mảng 12 số daysInMonth[12] = {31, 28, 31, ...}, rồi chỉ cần lấy daysInMonth[month - 1] là ra, khỏi phải viết 12 dòng if else. Em rảnh hơn nữa thì đi mã hóa 12 ngày trong tháng thành 1 số nguyên duy nhất, ví dụ 0x3bbeecc rồi xài 28 | 3 & 0x3bbeecc >> month * 2 là ra

ví dụ khác tính xếp loại giỏi khá trung bình v.v… thay vì if else >=8, >=6.5, >=5 em có thể lấy static_cast<diem / 0.5> là ra số nguyên thuộc đoạn [0, 20], em chỉ cần tạo mảng 21 số nguyên 0=giỏi, 1=khá, v.v… xepLoai[21] = {..., 1, 1, 1, 0, 0, 0, 0, 0} rồi trả về xepLoai[static_cast<diem / 0.5>] là xong, khỏi phải if else

Phuc viết 19:06 ngày 01/10/2018

chẳng biết bạn này là người mới chưa học tới nơi tới chốn hay là cao siêu quá rồi chê bai đây

nếu bạn thấy mình cao siêu quá thì mình chẳng có gì để chia sẻ.

còn nếu bạn là người mới thì chia vui. Mình ngày xưa cũng chán nản vậy thôi, ai mới mà chẳng vậy (đặc biệt là tự học). Nếu thấy chán thì cứ kiếm mấy cái thú vị hơn mà làm ví dụ lập trình mạng, lập trình giao diện, hay tìm hiểu về multimedia thử xem, thử lập trình hệ thống nữa, … Hãy tự làm sản phẩm để rồi bạn sẽ thấy những cái tầm thường mà bạn nói bây giờ tầm thường như thế nào.

Bien Khanh viết 19:11 ngày 01/10/2018

Mình không thấy chán mà chỉ thấy thắc mắc là lập trình chỉ là tổ hợp mấy thứ đó cộng lại ở mức độ phức tạp tùy chương trình thôi sao

Bien Khanh viết 19:00 ngày 01/10/2018

Hay quá anh ơi,em thích kiểu vậy đó

Huy Lê viết 19:06 ngày 01/10/2018

học lập trình 1 năm mà phát biểu :))),

Hung viết 19:07 ngày 01/10/2018

Giai đoạn đó bình thường thôi bạn.
Khi học bất kì môn gì luôn trải qua 5 giai đoạn:

  1. Không biết: chưa biết một chút gì về thứ muốn học, hay có hứng thú và gắn bó với nó hay không.
  2. Tiếp thu nhanh: lúc bắt đầu học, bản thân cảm thấy môn học có nhiều khái niệm, định lí, có nhiều cách suy luận khác nhau. Tâm trạng bản thân cảm thấy mình nhỏ bé trước lượng kiến thức của môn học.
  3. Hiểu tất cả: người học cảm thấy mình đã biết hết tất cả, không có kiến thức hay có thứ gì hay để tìm hiểu sâu.
  4. Nghi ngờ: khi so sánh những kinh nghiệm tích lũy được có gì đó không đúng, không được đa số người trong chuyên ngành môn học công nhận. Bản thân cảm thấy chán, cảm giác như đang bơi trong vô định.
  5. Bắt đầu hiểu: Sau khi mò kim đáy bể, cuối cùng cũng tìm được một tia sáng hi vọng. Bản thân đi theo tia sáng đó, bắt đầu khám phá ra nhiều điều mới hơn, cảm thấy thích thú hơn. Tuy nhiên, nếu so với khi bắt đầu học thì không bằng.

Nếu thời gian học 1 lĩnh vực trung bình là 3 năm, thì 6 tháng để đi từ (1) đến (3), mất tiếp khoảng 2 năm để từ (3) và (4), đạt đến chạm đáy vô vọng. 6 tháng còn lại bắt đầu giai đoạn (5).

Mình nghĩ quá trình học của bạn ở giai đoạn (3). Chỉ cần quyết tâm và không từ bỏ thì bạn sẽ tiếp tục được trong học lập trình.


Mình quên cái tên biểu đồ này rồi. Ai biết cho mình cái tên đi. Search Google không ra.

rogp10 viết 18:58 ngày 01/10/2018

Stages of Competence?

Trong thực tế thì sự tiến triển như một vòng xoắn ốc vậy, chứ không thẳng lên một đường.

Bài liên quan
0