Archive for the ‘KINH NGHIỆM LẬP TRÌNH’ Category

Hiển thị bài viết liên quan cho custom post type trong cùng custom taxonomy

Posted on: July 22nd, 2017 by hokien07 No Comments

Trong đoạn code ví dụ dưới đây chúng ta có:

Để hiển thị bài viết liên quan bạn hãy đặt đoạn code này vào chỗ bạn muốn hiển thị. Có thể là single.phphoặc single-devvn_quotes.php tùy vào mỗi theme nhé


Chú ý: hãy thay đoạn này thành custom post type và custom taxonomy của bạn

Chúc các bạn thành công!

Cách Học Lập Trình Nhanh Chóng

Posted on: July 12th, 2017 by hokien07 No Comments

có thể bạn đã biết, để thành công hay thành một chuyên gia về một lĩnh vực nào đó. Bạn sẽ phải bỏ ra 10.000 giờ, số giờ đó tương đương với ngày làm việc full time và làm liên tục trong 5 năm.

Vậy để trở thành một chuyên gia trong lĩnh vực nào đó, bạn sẽ mất 5 năm :). Thật là khó khan đúng không nào.

Thế nhưng điều đó không đúng khi chúng ta học một điều gì đó mới mẻ, học một cái gì đó mới. Không quan trọng much đích của bạn là để làm gì. Nhưng làm thế nào để học nhanh và hiểu nhanh một vấn để nào đó. Bạn cần có một phương pháp học đúng, như thế bạn mới có thể học nhanh và hiểu nhanh vấn đề.

 

Kiến thức lập trình di động dành cho người mới bắt đầu

Posted on: July 11th, 2017 by hokien07 No Comments

Cơn sốt Flappy Bird vẫn chưa có dấu hiệu dừng lại. Hơn 50 triệu lượt tải về và hàng chục triệu người chơi tích cực đã mang lại cho tác giả của nó hàng tỷ đồng mỗi ngày. Ngoài doanh thu khủng, niềm tự hào cho Việt Nam, chú chim này cũng là liều thuốc kích thích mạnh mẽ cho những người yêu thích lập trình game, đặc biệt là mảng game di động đang rất phát triển hiện nay.

Nếu biết ứng dụng tiền tỷ này đã được viết trong thời gian rảnh rỗi của tác giả, chỉ khoảng 2, 3 ngày, với đồ họa và cách chơi không thể đơn giản hơn, hẳn nhiều người cũng sẽ muốn trang bị cho mình một chút kiến thức về lập trình. Vậy, viết một game/app cho điện thoại có dễ dàng không?

Kiến thức lập trình di động dành cho người mới bắt đầu

Trước hết thì việc viết một ứng dụng cho điện thoại không quá khó, một ứng dụng dạng “Hello World” (Giống như “Hello” là câu chào đầu tiên khi bạn học tiếng Anh ) có thể được tạo bởi bất cứ ai, chỉ cần một công cụ và những câu lệnh cơ bản (thậm chí là có sẵn, chỉ việc copy/paste rồi cho chạy). Tuy nhiên, để có một ứng dụng “dùng được”, tất nhiên cần nhiều hơn thế, dưới đây là một vài kiến thức cần thiết để có thể viết nên một trò chơi, được đúc rút ra từ kinh nghiệm của những lập trình viên đang khá thành công hiện nay.

Một chút kiến thức về game.

Tất nhiên một người không chơi game thì sẽ chẳng biết gì về nó chứ chưa nói đến việc “viết”. Bạn nên chơi qua nhiều loại game để biết thể loại mình yêu thích (hoặc có thể sẽ được nhiều người yêu thích).

Một so sánh khá hay cho rằng, game đơn giản là một vòng lặp vô tận, trong vòng lặp đó, bạn vẽ nên các nhân vật, xử lý các diễn biến của game, xử lý sự kiện tương tác từ người chơi. Như vậy, càng am hiểu thì bạn càng tạo ra được nhiều sự kiện, game càng hấp dẫn hơn.

Biết một ngôn ngữ lập trình.

Kiến thức lập trình di động dành cho người mới bắt đầu

Từ “lập trình” nghe có vẻ khá cao siêu, tuy nhiên không quá khó để nắm bắt nó. Nếu đã viết được một chương trình “Hello World”, bạn hoàn toàn có thể tìm hiểu thêm để năm chắc về ngôn ngữ đó. Nhưng một điều quan trọng hơn, đó chính là “tư duy lập trình”, có thể gọi cách bạn xử lý các bài toán xuất hiện trong quá trình viết game.

Nếu bạn chỉ có nhu cầu viết các game/ứng dụng đơn giản, việc ‘tư duy” này cũng không quá khó khăn. Còn việc học ngôn ngữ lập trình, bạn có thể lựa chọn một trong những ngôn ngữ dưới đây tùy thuộc nhu cầu và thiết bị của mình.

Kiến thức về đồ họa.

Kiến thức lập trình di động dành cho người mới bắt đầu

Kiến thức về lập trình quan trọng bao nhiêu, thì đồ họa cũng vậy, thậm chí còn quan trọng hơn nhiều, đặc biệt trong những game có bối cảnh phức tạp, có nhân vật chuyển động (nếu bạn để ý thì sẽ thấy, thực sự thì nhân vật không di chuyển nhiều, mà chỉ có khung cảnh, background thay đổi). Đồ họa đẹp sẽ khiến trò chơi hấp dẫn hơn, không những thế, nó còn ảnh hưởng đến cả quá trình viết code, xử lý các diễn biến trong game.

Tuy nhiên, viết một game đơn giản thì đồ họa cũng chẳng cần cầu kỳ, sự thành công của các game do Nguyễn Hà Đông viết là một ví dụ, chúng chỉ sử dụng đồ họa 8-bit, dạng đồ họa của những năm 90.

Kiến thức về Toán học, Vật lý.

Điều này không quá quan trọng, nhưng không thể thiếu, ngoài việc giúp tư duy lập trình được tốt hơn, nó sẽ giúp bạn có thể mô tả chuyển động của nhân vật chuẩn xác và “mượt” hơn. Đó chỉ là một ví dụ đối với thể loại game có chuyển động. Mỗi thể loại game sẽ cần áp dụng các kiến thức về Toán học và Vật lý khác nhau. Những kiến thức này bạn có thể dễ dàng thu nạp từ các sách phổ thông, Google cũng là một ý kiến không tồi.

Kiến thức lập trình di động dành cho người mới bắt đầu

Một ý tưởng tốt.

Khi đã có nền tảng về những yếu tố trên, một ý tưởng tốt là yếu tố quyết định để tạo ra một ứng dụng “dùng được”. Ý tưởng nhiều khi đơn giản đến không tưởng, nhưng lợi nhuận mang lại không hề nhỏ. Flappy Bird– đưa chú chim qua khe kiếm được cả tỷ đồng mỗi ngày, Paper Toss (trò chơi ném cục giấy vào thùng)- khá “hot” hồi năm 2010 kiếm được nửa triệu đô một tháng. Còn ngớ ngẩn hơn là những game như Got Cash, I’m Rich hay 100 Dollars App, những game có mức giá ngất ngưởng mà không có tác dụng gì, ngoài việc chứng mình sự giàu có của người mua nó.

Kết: Trên đây là những điều cơ bản, cần có để có thể viết một ứng dụng/ game. Người viết hy vọng bạn sẽ có thêm hứng thú và niềm đam mê cho lập trình ứng dụng trên di động sau bài viết này.

Bạn có thể tự học lập trình ios hoặc lập trình android từ trang http://academy.vn, còn nếu thực sự muốn theo đuổi, muốn kiếm tiền từ công việc trên, hãy tham gia học một khóa lập trình ứng dụng cho iOSAndroid hay Windows Phone để được hướng dẫn tận tình hơn.

5 Ngôn ngữ lập trình tốt nhất cho người mới bắt đầu

Posted on: July 11th, 2017 by hokien07 No Comments

Bài viết được dịch từ trang web LifeHacker

Nếu bạn đang nghĩ đến việc học lập trình, thì ngôn ngữ bạn quyết định chọn để bắt đầu phụ thuộc rất nhiều vào cái mà bạn đang cố gắng học, cái mà bạn muốn làm với kỹ năng đó, và cái đích cuối cùng mà bạn muốn đi tới. Tuy nhiên, một số ngôn ngữ lập trình dễ học hơn những ngôn ngữ khác, và có một cộng đồng tích cực trong việc dạy hoặc đưa ra nhiều các kỹ năng hữu ích một khi bạn đã học chúng. Đây là 5 ngôn ngữ tốt nhất, dựa trên sự đề cử của chính các bạn độc giả.

Đâu là ngôn ngữ lập trình tốt nhất cho người mới bắt đầu?
Đâu là ngôn ngữ lập trình tốt nhất cho người mới bắt đầu?

Xin được nói rõ rằng – chúng ta đang không cố gắng giải quyết triệt để câu hỏi “Ngôn ngữ lập trình nào bạn nên học đầu tiên nếu bạn đang thử học lập trình?”. Mọi người đều có những quan điểm khác nhau và phụ thuộc vào những lý do xác định trong việc học của bạn, có lẽ trong trường hợp này không có câu trả lời nào là hoàn toàn chính xác cả. Các bạn đã đưa ra rất nhiều ý kiến trong bài viết trước và chúng tôi chỉ làm rõ hơn ở đây, với rất nhiều sự mô tả và những lý do cơ bản cho mỗi ngôn ngữ. Chúng tôi đã tiến hành tổng hợp và xếp hạng 5 ngôn ngữ lập trình phổ biến nhất theo đề cử của các bạn, nhưng không theo một trật tự nào cả.

1. Java

Ngôn ngữ lập trình Java

Ngôn ngữ Java của hãng Oracle là một trong những ngôn ngữ lập trình có chỗ đứng lâu nhất, bền bỉ và có tầm ảnh hưởng nhất. Bạn sẽ tìm thấy Java tại lõi của các ứng dụng trong và ngoài môi trường web, trên tất cả các nền tảng, các hệ điều hành và các thiết bị khác nhau. Nó là một ngôn ngữ lập trình hướng đối tượng, có đặc trưng sâu sắc dựa trên lớp (class-based), được thiết kế để có thể hoạt động được trên nhiều nền tảng nhất có thể. Vì lý do đó, nó cũng là một trong những ngôn ngữ lập trình phổ biến nhất thế giới, điều đó khiến nó trở nên vô cùng giá trị để học nếu bạn đang có hứng thú trong việc học lập trình. Nhược điểm của Java đó là để đảm bảo khả năng có thể chạy được ở nhiều nơi, nên nó tương đối khó nắm bắt để lập trình một cách hiệu quả và năng suất.

Mặc dù Java không phải là một ngôn ngữ lập trình hoàn hảo – nhiều trường lớp bắt đầu dạy bằng ngôn ngữ C hoặc C++ bởi vì Java thừa kế rất nhiều cú pháp từ những ngôn ngữ đi trước này. Những bạn chọn Java ở vị trí quán quân về ngôn ngữ lập trình nên học đầu tiên đã ghi chú rằng Java buộc bạn nghĩ giống như một lập trình viên – nghĩ một cách có logic và phân tích, và thực sự nắm được cách mà máy tính sẽ xử lý thông tin để thành công. Nó là một tập các khái niệm cốt lõi nền tảng sẽ giúp bạn khi bạn chuyển sang những ngôn ngữ và công nghệ khác.

TechMaster có đầy đủ các khóa học lập trình bằng những ngôn ngữ tốt nhất cho người mới bắt đầu.

2. Ruby

Ngôn ngữ lập trình Ruby

Ruby là một ngôn ngữ lập trình hướng đối tượng, dynamic, mã nguồn mở được phát triển bởi nhà khoa học máy tính người Nhật Bản là Yukihiro Matsumoto vào những năm 90s của thế kỷ trước, điều đó khiến cho nó trở thành một trong những ngôn ngữ lập trình tuổi đời còn ít nhưng lại được sử dụng rộng rãi. Ruby được thiết kế có cú pháp dễ đọc và dễ viết đối với con người, mà không cần thiết phải học một số lượng lớn những dòng lệnh và những “từ điển” chuyên biệt khi mới bắt đầu. Trong khi bản thân ngôn ngữ này là hướng đối tượng, nhưng nó cũng hỗ trợ lập trình thủ tục, chức năng và mệnh lệnh (imperative), một trong những yếu tố khiến nó đặc biệt linh hoạt.

Ruby nổi tiếng trong việc khá dễ học, chỉ với 20 phút xem một hướng dẫn dành cho người mới bắt đầu trên trang chủ của ngôn ngữ này là có thể khiến bạn trở nên quen thuộc với một số đặc điểm căn bản của nó, đây thực sự là một khoảng thời gian rất ngắn. Những fan hâm mộ các ngôn ngữ như Perl và Python cũng sẽ tìm thấy một số điểm tương đồng để trở nên thích thú. Những độc giả đề cử Ruby đã ca ngợi nó bởi tính dễ hiểu và dễ học, dễ đọc khi mới bắt đầu; và nó có một cộng đồng developer rộng lớn, năng động và đam mê để đảm bảo sự thành công của ngôn ngữ này.

3. Python

Ngôn ngữ lập trình Python

Khi mọi người bàn luận về những ngôn ngữ lập trình nên học đầu tiên và ngôn ngữ nào dễ dàng hơn cho mọi người có thể học nhanh chóng, Python chắc chắn là một lựa chọn. Nó được phát triển từ những năm 80s bởi Guido van Rossum, người sau đó đã quản lý ngôn ngữ này thông qua tổ chức phi lợi nhuận Python Software Foundation, phục vụ như là đơn vị quản lý của ngôn ngữ này, Python là ngôn ngữ mã nguồn mở và sử dụng miễn phí, thậm chí cho các ứng dụng thương mại. Python thường được sử dụng và xem như là một ngôn ngữ kịch bản, cho phép các lập trình viên tạo ra một số lượng lớn code dễ đọc trong một khoảng thời gian ngắn, nhưng nó cũng là một ngôn ngữ dynamic, hỗ trợ hướng đối tượng, thủ tục, và có phong cách lập trình chức năng như những ngôn ngữ khác. Bởi tính mềm dẻo của nó, Python là một trong những ngôn ngữ lập trình bậc cao được sử dụng rộng rãi nhất ngày nay.

Python không chỉ bắt đầu dạy ở mức cơ bản, mà nó dạy một số kiến thức hữu ích như indentation, module hóa, tính quan trọng của quy tắc đặt tên biến và hàm (naming conventions) sẽ giúp bạn rất nhiều khi bạn học và làm việc với những ngôn ngữ khác. Trong bài viết trước, tôi đã đề cập đến một chủ đề trên mạng xã hội Reddit nói về những mặt ưu và nhược điểm của ngôn ngữ này khi chọn nó để học đầu tiên. Những bạn đã đề cử Python cũng làm nổi bật một thực tế rằng cộng đồng các developer Python rất hạnh phúc bởi ngôn ngữ này thường được sử dụng như là một ngôn ngữ để dạy học, vì vậy họ có hàng tấn các công cụ học tập và các tài liệu có sẵn để giúp những người lần đầu tiên học code. Nhưng tutorial trên trang chủ của nó cũng dễ để làm theo, rất hữu ích và thực tế.

4. C/C++

Ngôn ngữ lập trình C/C++

Trong khi những đề cử của độc giả đa số là cho ngôn ngữ lập trình C và khá ít đề cử C++, chúng tôi đã quyết định gộp 2 ngôn ngữ này làm một, vì dù sao C++ cũng là một bước tiến từ C. Chúng ta không đi quá chi tiết vào lịch sử của ngôn ngữ C, và sau đó là C++ (cái mà đã bắt đầu cải tiến và cập nhật để mang ngôn ngữ C đến với các ứng dụng hiện đại), hãy chỉ nói về 2 ngôn ngữ này kể từ khi chúng được sinh ra từ những năm 1970s và đầu những năm 80s, tương ứng (bạn có thể đọc thêm về lịch sử của hai ngôn ngữ này ở link Wikipedia phía trên). C là ngôn ngữ lập trình mệnh lệnh được sử dụng cực kỳ rộng rãi, đa mục đích; có một tầm ảnh hưởng lớn đến hầu hết các ngôn ngữ lập trình đi sau nó. C++ mặt khác còn đi một bước xa hơn trong việc bổ sung các đặc trưng hướng đối tượng class đến ngôn ngữ này, đi kèm với các hàm ảo và template. C++ là một trong những ngôn ngữ lập trình phổ biến nhất trên thế giới, và ngày nay nó vẫn còn được sử dụng rộng rãi trong mọi thứ từ video games cho đến các phần mềm thương mại. Việc học C++ có một chút khó khăn hơn so với C, mặc dù nhiều người sẽ tranh cãi rằng không có lý do gì mà lại bắt đầu học lập trình bằng ngôn ngữ C cả. Đó là một cuộc tranh luận không có hồi kết.

Có một điều quan trọng về C và C++: cả 2 ngôn ngữ này hầu như là những ngôn ngữ nền tảng nhất trong khoa học máy tính và lập trình. Nếu bạn học chúng, bạn sẽ thu được nhiều lợi ích, thậm chí nếu sau này bạn không còn sử dụng chúng nữa. Chúng sẽ mang lại cho bạn cái nhìn sâu sắc vào trong điểm bắt đầu và nguồn gốc của khoa học máy tính và lập trình máy tính, trong khi nhiều người chỉ ra rằng việc học đó cũng giống như bạn đang học lái xe hơi trước khi học cách lắp ráp một chiếc xe, cả hai ngôn ngữ này đều có những mặt ưu và nhược điểm của chúng. Những độc giả đã ca ngợi chúng là ngôn ngữ đầu tiên để học nói rằng bạn sẽ có một sự hiểu biết phong phú về lập trình nếu bạn bắt đầu với chúng, và một độc giả đã trỏ link sang bài viết tuyệt vời này có nội dung về làm thế nào để các ngôn ngữ có thể phân biệt những lập trình viên giỏi và lập trình viên vĩ đại một cách dễ dàng. Lúc này, nếu bạn không nhắm đến lập trình chuyên nghiệp thì nó có thể trở thành vấn đề đối với bạn, nhưng nó vẫn có giá trị đáng để quan tâm. Ngoài ra, một số bạn đã đề cử những “biến thể” khác của C và C++ áp dụng cho những ứng dụng xác định, như ANSI C thường được sử dụng trong lập trình các vi xử lý Arduino, Robot C được sử dụng trong lập trình robot. Nhiều bạn cũng nói rằng việc bắt đầu với những ngôn ngữ khó như C và C++ khiến cho việc chuyển sang học ngôn ngữ khác (ví dụ: Java) sẽ trở nên dễ dàng hơn.

5. JavaScript

Ngôn ngữ lập trình JavaScript

Bạn đừng nhầm lẫn JavaScript với Java, đây là một ngôn ngữ kịch bản đã được phát triển vào những năm 90s bởi Brendan Eich, cựu nhân viên của hãng Netscape Communications và giờ là Mozilla Foundation. JavaScript là một trong những công nghệ nền tảng mà web dựa trên đó. Đừng để tôi đánh lừa bạn – JavaScript tồn tại bên ngoài các trình duyệt, nhưng phần lớn nằm trong ngữ cảnh của các ứng dụng và dịch vụ kết nối. Ngôn ngữ này tự bản thân nó là dynamic, và cung cấp cho các lập trình viên sự mềm dẻo để sử dụng phong cách lập trình hướng đối tượng (và bản thân ngôn ngữ này hầu như là hướng đối tượng) cũng như là hướng chức năng và mệnh lệnh. Nó tiếp nhận nhiều cú pháp từ ngôn ngữ C, và nếu bạn lên kế hoạch để làm bất kỳ sự phát triển cho web, thì việc học JavaScript nên nằm trong danh sách của bạn.

May mắn thay, JavaScript khá dễ học, đã sẵn sàng ở trong trình duyệt để bạn có thể vọc vậy, và mặc dù nó đã tồn tại được khá lâu, nhưng ngày càng thu được sự nổi tiếng hơn. Nhiều người đề cử nó đã lưu ý rằng khả năng bạn áp dụng khi học JavaScript là rất lớn, bởi vì bạn có thể bắt đầu sử dụng nó ngay bằng cách xây dựng một vài thứ trên web – điều này có thể rất tốt khi mọi người bắt đầu học lập trình. Một số bạn thậm chí còn nói rằng họ đã học được những ngôn ngữ phức tạp hơn nhiều như C và Java bằng cách chọn JavaScript là ngôn ngữ đầu tiên (nhưng đừng lầm lẫn – có rất ít sự liên quan giữa JavaScript và Java). Ngoài ra, nếu bạn đang tìm cách để lập trình chuyên nghiệp, thì hiện nay JavaScript có nhu cầu rất lớn.