Bắt đầu học lập trình web. Tôi bắt đầu làm việc nhưng cảm thấy như mình đang đi vào ngõ cụt. Lập trình từ đầu. Bắt đầu viết mã Java và Web ở đâu

Phần phụ trợ

Phần cuối là phần máy chủ của ứng dụng, người dùng không nhìn thấy được. Điều này bao gồm: ủy quyền, lưu trữ và xử lý dữ liệu, bản tin email vân vân. Hãy chỉ nói rằng phần phụ trợ là những gì nằm bên trong.

Có rất nhiều ngôn ngữ lập trình ở đây, đây là những ngôn ngữ phổ biến nhất:

Php
mạng asp
Java
Python
hồng ngọc
Nút js

Tôi khuyên bạn chỉ nên chọn một, vì với yêu cầu hiện tại đối với lập trình viên, sẽ phải mất ít nhất vài năm mới đạt được trình độ trung cấp. Khi lựa chọn, bạn có thể làm quen với các vị trí tuyển dụng trong thành phố của mình, xem vị trí nào phù hợp hơn, nơi họ trả nhiều tiền hơn và tùy thuộc vào ngôn ngữ họ yêu cầu mà chọn ngôn ngữ đó.

Máy chủ chủ yếu được sử dụng để làm việc với dữ liệu. Vì vậy, bạn sẽ cần phải học ít nhất một trong các Cơ sở dữ liệu quan hệ dữ liệu:

Lời tiên tri
MSSQL
MYSQL
Postgres

Xét về độ phức tạp, điều này cũng giống như việc thành thạo một ngôn ngữ lập trình. Trong tất cả các cơ sở dữ liệu được liệt kê, có một phần giống nhau ở mọi nơi - cái gọi là sql (ngôn ngữ truy vấn), cũng như ngôn ngữ thủ tục khác nhau trong mỗi cơ sở dữ liệu. Vì sql vẫn như cũ và nó là nền tảng cho mọi thứ liên quan đến xử lý dữ liệu nên việc chuyển sang cơ sở dữ liệu khác không phải là vấn đề như vậy. Do đó, bạn có thể chọn bất kỳ ai để bắt đầu, nhưng ngay cả ở đây tôi cũng sẽ tuân theo nguyên tắc phân tích các vị trí tuyển dụng.

Cá nhân tôi đánh giá cao việc nghiên cứu phần phụ trợ, vì các kỹ năng ở đây ổn định hơn và một khi bạn học được điều gì đó, bạn có thể làm việc đó trong thời gian dài.

Giao diện người dùng

Frontend là phần chạy trong trình duyệt mà người dùng tương tác trực tiếp. Đó là các giao diện động, menu, sự kiện dựa trên hành động của người dùng, trao đổi dữ liệu với phần máy chủ, nói chung là những gì diễn ra trên máy khách.

Ngôn ngữ lập trình ở đây là javascript. Một mặt, đây là một điểm cộng nhất định, vì sau khi nghiên cứu nó, tất cả các công ty trong thành phố của bạn tham gia phát triển web sẽ mở cửa cho bạn và hiện nhiều công ty đang làm điều này. Mặt khác, có những sắc thái.

JavaScript hiện có hai tiêu chuẩn được sử dụng rộng rãi: ECMAScript 5 và ECMAScript 6. Sự khác biệt giữa chúng là ECMAScript 5 không có OPP chính thức. ECMAScript 6 có nó, nhưng vì tiêu chuẩn này xuất hiện tương đối gần đây nên hầu hết các ứng dụng đã được viết bằng ECMAScript 5, do đó cần phải nắm vững cả hai tiêu chuẩn và kết quả là hai tiêu chuẩn. phương pháp tiếp cận khác nhauđể phát triển.

Một điểm khác cần được tính đến là cùng một mã được viết bằng javascript có thể khác nhau tập thể dục trong các trình duyệt khác nhau và trên hệ điều hành khác nhau. Với các yêu cầu hiện tại đối với các ứng dụng, sẽ cần phải viết cái gọi là mã trình duyệt chéo, tức là mã mà việc thực thi của nó sẽ cho kết quả giống nhau ở mọi nơi. Không có hướng dẫn cụ thể nào để viết mã như vậy; trong trường hợp này, các diễn đàn và Google có thể giúp bạn.

Các vấn đề có vấn đề mà tôi mô tả đã được giải quyết trong các khung công tác js hiện đại (ví dụ: Angular và React). Nhưng trong các dự án được viết mà không sử dụng framework, những vấn đề này vẫn tồn tại.

Đối với cá nhân tôi, một nhược điểm còn lớn hơn là xu hướng ở đây đang phát triển rất nhanh. Các phiên bản của framework được cập nhật liên tục, các thư viện mới được phát hành và mọi người ngay lập tức muốn bắt đầu sử dụng chúng. Nói chung, bạn không thể theo kịp cộng đồng.

Đầy đủ ngăn xếp

Ngay từ cái tên đã rõ ràng rằng loại này các nhà phát triển đang phát triển cả hai phần. Tôi không khuyên bạn nên cố gắng trở thành một nhà phát triển như vậy, vì việc học tất cả các bộ não trong mọi trường hợp là chưa đủ và hầu hết các công ty đã đi theo con đường phân công lao động. Tuy nhiên, ngăn xếp đầy đủ là nơi bạn cần bắt đầu để tiến một bước tới phần phụ trợ hoặc giao diện người dùng. Sau khi phát triển một vài ứng dụng nhỏ, bạn sẽ hiểu sự khác biệt giữa chúng (và thực sự là có một ứng dụng) và bạn sẽ có thể quyết định bên nào gần bạn hơn.

Có lần, để quyết định, tôi đã đọc cuốn sách “Tạo trang web động” của tác giả “Robin Nixon”. Cuốn sách nhỏ, chỉ có 500 trang, nhưng nhờ nó mà tôi có được ý tưởng tổng quát về phát triển web và mạnh dạn lựa chọn hướng tới phần phụ trợ, điều mà tôi vẫn không hối hận. Tôi lấy cuốn sách này làm ví dụ, bạn có thể lấy bất kỳ cuốn sách nào khác, không thành vấn đề.

Bắt đầu học lập trình từ đâu?
Trong bài viết này, tôi đã cố gắng phân tích chi tiết liệu bạn có thể tự mình trở thành một lập trình viên từ đầu hay không và có những lựa chọn nào để bạn tự mình thành thạo lập trình và bắt đầu kiếm tiền từ nó.
CẬP NHẬT: Những ai đang tìm kiếm nơi để bắt đầu học lập trình từ đầu trong năm 2018 (hoặc mới chuẩn bị bắt đầu vào năm 2019 :)) đều rất may mắn nhờ cuốn sách “Giới thiệu về Phát triển” của Ykov Kramarenko phần mềm" Tôi hết lòng khuyên bạn nên kiểm tra nó - nó đáng được cập nhật với xếp hạng số 1 trên Google và đánh giá của người đọc dành cho những người tự học viết mã.

Tôi đã cố gắng cống hiến những gì tốt nhất - theo ý kiến ​​​​của tôi - theo cách. Tôi cảnh báo bạn - điều đó không hề dễ dàng! đọc thêm có thể khiến bạn mất nhiều giờ hoạt động thú vị :)

Tôi sẽ nói ngay - nếu bạn quyết định chỉ học lập trình mà không đầu tư tiền, bạn sẽ phải tốn nhiều thời gian hơn. Dự kiến ​​bạn sẽ thành thạo một chuyên ngành mới trong ít nhất một năm nếu bạn đang học song song với một công việc khác.

Nếu bạn tìm thấy điều gì đó cần bổ sung vào bài viết này để giúp nó hữu ích hơn cho mọi người, hãy viết bình luận.

Bài viết này chứa thực hành tốt hơn, dựa trên kinh nghiệm của tôi, nếu bạn muốn tự học lập trình. Tất cả điều này vẫn có liên quan với một vài bổ sung.

Sách dạy lập trình web cho người mới bắt đầu

Phiên bản 2016 được dịch: https://courses.prometheus.org.ua/courses/Prometheus/CS50/2016_T1/about.

Tốt hơn là nên tham gia khóa học bằng tiếng Anh. Bạn sẽ cải thiện ngôn ngữ của mình và thông tin sẽ tươi mới hơn. Mặc dù tỷ giá hối đoái không thay đổi nhiều - thay vào đó chỉ có trong năm 2017 PHP đã bắt đầuđược Python sử dụng.

Việc hoàn thành khóa học sẽ mất thời gian nhưng sẽ cung cấp sự hiểu biết khá đầy đủ mà bạn khó có thể tự mình đạt được.

Ban đầu, bạn cần quyết định lĩnh vực lập trình nào bạn quan tâm. Nếu như Chúng ta đang nói về về việc học phát triển từ đầu và bạn muốn sớm bắt đầu kiếm tiền từ nó thì theo tôi có hai lựa chọn: phát triển cho thiêt bị di động hoặc phát triển web.

Theo tôi, lựa chọn tốt nhất trong tình huống như vậy là bắt đầu học phát triển web. Ở đây, ngưỡng đầu vào dành cho người mới bắt đầu thấp hơn và có cơ hội bắt đầu thực hiện các đơn đặt hàng đơn giản sớm hơn.

Làm thế nào để tự mình trở thành một lập trình viên từ đầu

Nếu tôi bắt đầu tự học phát triển web từ đầu (nhận ra rằng không cần đầu tư tiền thì đây là con đường dài hơn), thì tôi sẽ đề xuất con đường này cho chính mình:

1. Hiểu HTML và CSS

Một khóa học tốt để phát triển HTML và CSS cơ bản: https://learn.shayhowe.com/html-css/ (tiếng Anh) hoặc https://webref.ru/layout/learn-html-css (bản dịch).

Sau đó, bạn nên xem xét các khả năng của Bootstrap, nó đã trở thành tiêu chuẩn trên thực tế để tăng tốc phát triển ứng dụng web: http://getbootstrap.com/

Điều này sẽ là đủ cho các bước tiếp theo.
Bạn có thể muốn dừng lại ở điểm này và nghiên cứu CSS chi tiết hơn. Điều này sẽ cho bạn cơ hội làm việc như một nhà thiết kế bố cục - một người tạo ra một thiết kế tĩnh từ trang HTML, sau đó lập trình viên sẽ khôi phục nó, triển khai logic của dự án.

Bạn cũng có thể kiếm tiền từ việc này - với tư cách là người làm việc tự do và làm việc trong một công ty CNTT chuyên phát triển web.

Nhưng vì chúng tôi đã quyết định trở thành một lập trình viên nên chúng tôi đã tiếp tục!

2. Làm quen với jQuery

Nếu thích, bạn có thể tiếp tục tìm hiểu giao diện người dùng và bắt đầu học Javascript.

Nếu theo dõi https://angularjs.org/ hoặc http://backbonejs.org/ thì đây là con đường dẫn đến phát triển front-end. Một chuyên ngành tốt, đặc biệt là vì những kiến ​​thức như vậy sẽ hữu ích cho bất kỳ lập trình viên nào đã chọn phát triển web.

Lời khuyên của tôi là hãy gắn bó với jQuery ngay bây giờ và tiếp tục.

3. Nắm vững ngôn ngữ lập trình máy chủ

Có rất nhiều sự lựa chọn ở đây. Các ngôn ngữ lập trình hứa hẹn nhất là Ruby, Java, Python, Node.JS (Javascript cho máy chủ).

nhất bằng ngôn ngữ đơn giản lập trình cho người mới bắt đầu sẽ là Python. Nếu bạn học Python và sau đó là khung phát triển web Django, bạn sẽ có mọi thứ cần thiết để tự mình giải quyết một số dự án khá phức tạp.

Một lựa chọn tốt là ngôn ngữ lập trình Python và Django

Ngoài ra - Python và Django sẽ dạy bạn cách lập trình “đúng”. Python luôn nằm trong TOP5-10 ngôn ngữ phổ biến nhất và chuyên gia giỏi Python có một số lập trình viên được trả lương cao nhất. Python vừa là ngôn ngữ lập trình đơn giản, dễ hiểu dành cho những người mới lập trình, vừa được sử dụng trong nhiều lĩnh vực. các công ty lớn và trên các dự án lớn.

Để bắt đầu tự mình, hãy đọc "Python for Kids" của Jason Briggs hoặc xem:

Trong số các tài liệu khác, tôi khuyên bạn nên học Python The Hard Way. sách " Python đơn giản. Phong cách lập trình hiện đại." Và tất nhiên, Hướng dẫn Python 2 và Hướng dẫn Python 3.

Django được cho là framework tốt nhất để phát triển web

Công cụ tốt nhất cho mọi trường hợp rất khó tìm. Django có tiềm năng trở thành một công cụ phát triển web.

Bắt đầu học Django từ đâu:

Bắt đầu với tài liệu chính thức, có một hướng dẫn rất hay ở đó: https://docs.djangoproject.com/en/2.1/intro/

Tango với Django là cơ hội tốt cải thiện tiếng Anh của bạn, đồng thời hiểu được cách cấu trúc các dự án web và cách mọi thứ hoạt động.

Tùy chọn số 2 - PHP và WordPress

Một cách khác là bắt đầu với PHP và làm việc với CMS phổ biến. Nếu bạn đang tự học lập trình và muốn bắt đầu nhanh chóng, hãy bắt đầu với PHP.

Nhiều người coi PHP là một ngôn ngữ lập trình “không thực sự” và có lý do chính đáng. PHP hiếm khi được sử dụng trong các ứng dụng web lớn và chỉ được thiết kế cho web - nó không thể được sử dụng trong các lĩnh vực khác.

Mặt khác, PHP lại dẫn đầu về số lượng website ra mắt trên thế giới. CMS (hệ thống quản lý nội dung) phổ biến nhất đều dựa trên nó.

Sau đó, hãy tìm hiểu cách tạo chủ đề cho WordPress - đây có lẽ là CMS phổ biến nhất trên thế giới, nếu đo bằng số lượng trang web đang chạy.

Một khi bạn hiểu rõ điều này, bạn đã có thể tìm được việc làm. Có rất nhiều trang web chạy PHP và WordPress nên có đủ công việc cho tất cả mọi người.

Làm thế nào để bắt đầu kiếm tiền với tư cách là một lập trình viên

Nhiều người hình dung công việc của một lập trình viên tự do như thế này:

Trong thực tế, nó trông giống như thế này:

Nếu bạn đã sẵn sàng làm lập trình viên và đang tìm cách kiếm tiền, chào mừng bạn đến với công việc tự do! Trao đổi tự do sẽ cho phép bạn tìm thấy đơn đặt hàng đơn giản(có thể gần như miễn phí lúc đầu) - để thực hành. Nói chung, làm việc cho một công ty CNTT có thể sinh lợi nhiều hơn nếu bạn chỉ tìm kiếm một công việc lập trình.

Sau điểm 2 - khi đã thành thạo HTML, CSS và jQuery - bạn có thể đến các sàn giao dịch việc làm tự do và nhận các đơn đặt hàng đơn giản, xây dựng hồ sơ của mình.

Bạn có biết tiếng Anh không? https://www.upwork.com/

Không hề, ngay cả với một cuốn từ điển? http://freelance.ru/

Khi bạn có thể tự làm trang web, bạn sẽ dễ dàng tìm kiếm khách hàng hơn - sẽ có những đánh giá và trải nghiệm.

Con đường phát triển web nhanh chóng

Dựa trên kinh nghiệm của tôi, sẽ mất 6 tới 12 tháng để học lập trình từ đầu. kịch bản hay nhất, trong khi 6 tháng là nếu có người giúp đỡ bạn.

Để đẩy nhanh quá trình bước vào lĩnh vực CNTT, hãy tìm cơ hội đi đào tạo (bạn có thể cần nhiều hơn một cơ hội) hoặc tìm người sẽ đào tạo cùng bạn. Trên thực tế, nếu không có người truyền đạt kiến ​​thức cho bạn thì điều đó rất khó khăn, bạn có thể ngồi cả năm trời để đọc sách và không bao giờ bắt đầu. Và với người hiểu biết ai có thể đơn giản nói về những điều khó khăn- dễ dàng hơn nhiều.

Có một lần, tôi đã chọn con đường vào thông qua đào tạo. Vì tôi biết rất nhiều về phát triển, điều này cho phép tôi thành thạo trong 2 tháng những gì lẽ ra phải mất sáu tháng. Tìm theo cách của bạn.

Tôi có những người đã quyết định nghiêm túc bắt đầu sự nghiệp lập trình và muốn đẩy nhanh quá trình. Còn rất nhiều khóa học khác. Nếu bạn tìm cho mình một người cố vấn - một người sẽ tận tay dẫn dắt bạn - điều này sẽ rút ngắn đáng kể con đường trở thành nhà phát triển của bạn.

Ngay khi bạn cảm thấy tự tin rằng mình có thể tạo ra thứ gì đó, hãy tìm một công ty nơi bạn có thể phát triển hơn nữa hoặc tìm khách hàng.

HTML, CSS, Python và Javascript chỉ là những kiến ​​thức cơ bản, giai đoạn đầu tiên. Tiếp theo, việc thực hành, nghiên cứu các thuật toán và công cụ phát triển là rất quan trọng.

Nếu bạn có thắc mắc, hãy hỏi trong phần bình luận! Tôi hy vọng bài viết này sẽ giúp bạn thực hiện bước đầu tiên. Chúc may mắn!

Nếu bạn nhìn vào nó, mỗi người chúng ta đều lập trình hàng ngày. Không tin tôi? Nhưng bạn đặt báo thức trên điện thoại của mình thành thời gian nhất định. Hoặc cài đặt chương trình cho Máy giặt, nồi đa năng.

Trong trường hợp này, bằng hành động của mình, bạn thay đổi giá trị của các biến và bắt đầu thực hiện các chức năng khác nhau, được đăng ký tại Mã chương trình từng thiết bị. Đối với những người khao khát kiến ​​thức mới, chúng tôi sẽ nói chi tiết hơn về lập trình cho người mới bắt đầu:

Lập trình ngày nay

Để tiếp tục làm quen với lập trình, chúng ta hãy làm tổng quan giới thiệu về thực trạng của ngành này hiện nay. Điều này sẽ tạo điều kiện thuận lợi cho sự hiểu biết về tài liệu. Nó cũng sẽ cho phép mọi người mới bắt đầu làm sự lựa chọn đúng đắn, lựa chọn cho mình một khu vực phù hợp.

Cần hiểu rằng ở thời đại chúng ta, lập trình đã phát triển từ những điều cơ bản thành một ngành khoa học riêng biệt, bao gồm nhiều lĩnh vực và chuyên môn. Nhiều trong số chúng đã được hình thành và một số chỉ mới bắt đầu xuất hiện.

Công nghệ đề cập đến một phương pháp (cách tiếp cận) đã được chứng minh và thiết lập tốt để thực hiện các nhiệm vụ và chức năng nhất định bằng cách sử dụng một số ngôn ngữ lập trình.

Một công nghệ như vậy là ASP.Net. Nó được xây dựng trên nền tảng Asp kế thừa bằng một trong các ngôn ngữ .Net. Được sử dụng phổ biến nhất là C# và Ngôn ngữ lập trình. ASP.Net là công nghệ máy chủ, được sử dụng để xây dựng trang web và dịch vụ web:


Nhưng kết nối này không phải là kết nối chính được sử dụng để xây dựng một ngôi nhà hiện đại. không gian ảo. Ngôn ngữ thường được sử dụng nhất để tạo tài nguyên web là Lập trình PHP và MySQL. Tất nhiên, tất cả những thành phần này " dày dạn» Mã CSS và HTML.

Mặc dù mối quan hệ giữa các bộ môn này vẫn chưa được xác định là một công nghệ web riêng biệt nhưng chúng thường được coi là một tổng thể duy nhất. Nghĩa là, kiến ​​thức cơ bản về chúng là một tiêu chuẩn được chấp nhận rộng rãi và là bắt buộc đối với mọi lập trình viên web.

Lập trình web

Khi bắt đầu xuất hiện không gian ảo hiện đại, chỉ có một ngôn ngữ siêu văn bản được sử dụng ( HTML). Đây là nơi bắt đầu lập trình web. Theo thời gian, khả năng của các thẻ và thuộc tính của nó để thiết kế trang web trở nên hạn chế. Do đó, một ngôn ngữ tạo kiểu đặc biệt cho các phần tử CSS đã được triển khai.

Với sự trợ giúp của nó, các khả năng thiết kế trực quan các trang web đã tăng lên đáng kể. Đây chính là điều đã góp phần to lớn vào sự phát triển thiết kế web hiện đại như một ngành công nghiệp riêng biệt.

Giai đoạn tiếp theo trong quá trình phát triển của Internet là sự xuất hiện của các nguồn tài nguyên thay đổi linh hoạt. Trước đó, tất cả các trang web đều tĩnh và không thể thay đổi nội dung theo hành động của người dùng. Hạn chế này đã được khắc phục một phần bằng cách nhúng các khối mã Java Script vào HTML.

Nhưng cách tiếp cận này không giúp bạn có thể tạo một trang web một cách nhanh chóng. Ngoài ra, việc sử dụng Java Script không cho phép bạn ẩn hoàn toàn mã của nó, điều này làm giảm đáng kể tính bảo mật của tài nguyên.

Chỉ có thể tạo các tài nguyên thay đổi linh hoạt thông qua việc sử dụng các ngôn ngữ lập trình phía máy chủ. Cái chính là PHP.

Lập trình bằng PHP là cách chính để tạo ra tài nguyên động và các trang Internet.


Nhưng trên ở giai đoạn này Sự phát triển của Internet, một ngôn ngữ máy chủ để xây dựng tài nguyên web là không đủ. Để tạo động các trang web, bạn cần một nguồn nơi bạn có thể lưu tất cả các phần của mẫu.

Và để đáp ứng yêu cầu trình duyệt của khách hàng, hãy nhanh chóng truy xuất dữ liệu cần thiết để tạo. Hệ thống quản lý cơ sở dữ liệu (DBMS) được sử dụng phổ biến nhất là MySQL. Điều này cần phải được tính đến khi quyết định nơi bắt đầu lập trình web.

Bây giờ hãy tóm tắt những điều trên:

  • Nền tảng của bất kỳ trang web nào là HTML và CSS;
  • Phổ biến nhất là kiểu động tài nguyên web;
  • Chủ yếu ngôn ngữ máy chủ là PHP;
  • Ngoài PHP, MySQL DBMS được sử dụng để tạo các trang web động.

Tất cả các ngành được liệt kê là cơ bản. Những điều cơ bản của chúng là nơi bạn bắt đầu học lập trình web.

Lập trình ứng dụng

Nó đề cập đến lĩnh vực phát triển ứng dụng cấp độ ứng dụng. Đó là những thứ được thiết kế để tương tác trực tiếp với người dùng. Nói một cách đơn giản, đây là cách viết ứng dụng khách, mà chúng tôi cài đặt trên PC của mình để giải quyết mọi vấn đề ( phát âm thanh và video, chỉnh sửa văn bản hoặc dữ liệu đồ họa, v.v.).

Một loại lập trình ứng dụng khác là Lập trình hệ thống. Nó liên quan đến việc tạo ra các chương trình với sự trợ giúp của sự tương tác được thực hiện với nhau. phần khác nhau hệ điều hành (trình điều khiển, dịch giả).

Các ngôn ngữ lập trình cấp ứng dụng hứa hẹn nhất:

  • C/C++ là nơi bạn bắt đầu học lập trình. Mặc dù tuổi đã cao nhưng những ngôn ngữ này vẫn còn phù hợp cho đến ngày nay. Hơn nữa, C là ngôn ngữ chính được viết trong hệ điều hành Windows:


  • C# là hậu duệ xa của các ngôn ngữ trước đó. Một phần của gói .NET của Microsoft. Được sử dụng như trong lập trình ứng dụng và để tạo các ứng dụng web dựa trên công nghệ asp.net;
  • Java là một ngôn ngữ đa nền tảng. Nền tảng của hệ điều hành di động phổ biến hiện nay Hệ thống Android. Phát triển ứng dụng cho hệ điều hành này là một lĩnh vực rất hứa hẹn:

Học như thế nào

Nếu bạn là người mới bắt đầu và thậm chí không biết kiến ​​thức cơ bản về lập trình thì tốt nhất bạn nên bắt đầu học với C hoặc C++. Hầu hết các ngôn ngữ khác đều có cú pháp và cấu trúc tương tự.

Điều quan trọng nữa là chọn đúng nguồn thông tin chính. Tốt nhất nếu đây là những cuốn sách về lập trình. Bằng cách nhập mã ví dụ theo cách thủ công, người mới bắt đầu sẽ nhanh chóng ghi nhớ cấu trúc và các thành phần cơ bản của ngôn ngữ.

BẰNG nguồn bổ sungĐể biết thông tin, bạn nên chọn một số tài nguyên đã được chứng minh. Điều quan trọng là trang web không chỉ chứa các ví dụ về cách triển khai bằng mã mà còn có các giải thích chi tiết về chúng.

Thái độ của một người đối với việc học cũng rất quan trọng. Sẽ tốt nhất nếu bạn coi toàn bộ quá trình như một bài học lập trình. Nghĩa là, mỗi bài học nên dành để nắm vững một chủ đề cụ thể, kèm theo việc xem xét ví dụ thực tế và tự viết mã. Sau đó quá trình giáo dục sẽ diễn ra hiệu quả và nhanh chóng hơn nhiều.

Nhà phát triển, giáo viên và tác giả của các khóa học lập trình Bill Soror đăng trên blog FreeCodeCamp hướng dẫn chi tiết dành cho những ai muốn học phát triển web từ đầu. Tại mỗi thời điểm, Soror cung cấp các liên kết đến tài liệu đào tạo và nói về lý do tại sao cần có một ngôn ngữ hoặc khung lập trình cụ thể.

Theo Soror, ông đã viết mã được 20 năm. Ông chia hướng dẫn của mình thành nhiều phần dựa trên mục tiêu học tập - để học cơ bản về ngôn ngữ lập trình và thu thập kiến ​​thức chuyên sâu trong các lĩnh vực phát triển riêng lẻ.

“Tôi quyết định học lập trình. Tôi thích web nhưng tôi không biết bắt đầu từ đâu"

Giống như bất kỳ ngành học nào khác, việc học lập trình cần phải bắt đầu với những kiến ​​thức cơ bản về tất cả các lĩnh vực phát triển web - thường được gọi là "full stack". Soror viết: “Điều này sẽ giúp bạn xác định lĩnh vực mà bạn quan tâm nhất để học tập và sẽ cung cấp cho bạn kiến ​​thức cơ bản để bắt đầu”.

Khái niệm cơ bản về HTML

Nhà phát triển khuyên nên bắt đầu bằng việc nghiên cứu Khái niệm cơ bản về HTML. “Bằng cách bắt đầu với điều này, bạn sẽ nắm vững được sự phát triển giao diện người dùng và tương tác với chúng. Ngoài ra, bạn sẽ thấy ngay kết quả mã của mình,” giáo viên lưu ý.

"Tôi biết những điều cơ bản về HTML"

Khái niệm cơ bản về JavaScript

"JavaScript là ngôn ngữ của web, mọi thứ trình duyệt phổ biến(Chrome, Firefox, Safari, IE) có hỗ trợ JavaScript tích hợp. Mọi trang web hoặc ứng dụng web bạn sử dụng đều có thể có một số lượng lớn Mã JavaScript bên trong. Ngoài ra: ngôn ngữ này hiện đang trở nên phổ biến trên các nền tảng khác - chẳng hạn như máy chủ, máy tính để bàn và thiết bị."

"Tôi biết kiến ​​thức cơ bản về JavaScript và HTML"

CSS

Tiếp theo, Soror gợi ý chuyển sang học CSS để tùy chỉnh vẻ bề ngoài Các phần tử HTML. Để làm điều này, bạn có thể sử dụng hướng dẫn miễn phí của Mozilla để dạy những điều cơ bản và trang CSS-Tricks để giải quyết các vấn đề cơ bản.

Phần phụ trợ

“Đến thời điểm này, bạn đã có được kiến ​​thức về cái gọi là “phát triển front-end”. Bây giờ bạn có thể chuyển sang "phụ trợ". Đây là mã chạy trên máy chủ,” Soror viết. - Có nhiều ngôn ngữ backend nhưng vì bạn đã quen với JavaScript nên mình khuyên bạn nên học Node JS ( nền tảng phần mềm- khoảng. biên tập.). Ngoài Node JS, bạn có thể học Express và Mongo DB."

Express là một thư viện giúp Node JS tương tác với máy chủ web dễ dàng hơn. Mongo DB là cơ sở dữ liệu để lưu trữ và truy xuất thông tin.

jQuery

Khung công tác JS

Các khung giúp làm việc với ngôn ngữ phát triển dễ dàng hơn và giải quyết các vấn đề chính bằng cách sử dụng công nghệ sẵn sàng. Có một cái chợ số lượng lớn framework do sự phổ biến quá mức của JavaScript, Soror viết.

Phản ứng JS

React được Facebook phát triển và chạy trên kiến ​​trúc Flux. Đây là thư viện JavaScript để tạo giao diện. Soror lưu ý rằng React gần đây đã vượt qua một thư viện phổ biến khác, Angular, về mức độ phổ biến, vì vậy tốt hơn hết bạn nên bắt đầu học các framework với nó. Khóa học miễn phí để học React.

Góc cạnh và

Góc - được phát triển bởi Google. Framework này vẫn còn phổ biến đối với các nhà phát triển. Sau khi công bố Angular, Google quyết định viết lại hoàn toàn framework và tung ra Angular 2, do đó có hai sự phát triển hoàn toàn khác nhau nhưng có cùng tên.

Bạn có thể học miễn phí Angular 1 framework tại Code School. Bạn có thể làm quen với Angular 2 bằng các video miễn phí.

Ember JS

Framework này không mạnh mẽ như những framework do Google và Facebook phát triển, nhưng nó đang trở nên phổ biến đối với các nhà phát triển. Tài liệu chính thức của Ember JS.

"Tôi muốn trở thành nhà phát triển phụ trợ"

Giáo viên viết: “Có nhiều ngôn ngữ trong phát triển phụ trợ, mỗi ngôn ngữ đều có ưu và nhược điểm riêng. Ông cũng đưa ra biểu đồ về mức độ phổ biến của họ trong 10 năm qua:


Soror cho biết những ngôn ngữ lập trình được biểu thị bằng khung màu xanh lá cây là những ngôn ngữ mà bạn nên tập trung chú ý.

Java

Một ngôn ngữ lập trình rất phổ biến được phát triển bởi Sun Microsystems (hiện thuộc sở hữu của Oracle). Java được sử dụng để phát triển các ứng dụng Android. Nó cũng có thể được sử dụng để tạo các ứng dụng web và máy tính để bàn.

Vì đây là ngôn ngữ phổ biến đối với các nhà phát triển nên bạn có thể tìm thấy rất nhiều hướng dẫn về ngôn ngữ này trên Internet. Soror khuyên bạn nên bắt đầu với khóa học dành cho người mới bắt đầu.

C#

Ngôn ngữ phát triển bởi Microsoft như một sự thay thế cho Java. Giống như Java, C# là ngôn ngữ lập trình hướng đối tượng và có thể được sử dụng không chỉ để phát triển các ứng dụng web mà còn cả các chương trình máy tính để bàn. các hệ điều hành. Khóa học miễn phí về học C# từ Microsoft ảo Học viện.

Python

Không có thương hiệu lớn nào đằng sau Python. Tuy nhiên, ngôn ngữ này cho phép phát triển nhanh chóng. Một trang web có các bài học Python miễn phí.

hồng ngọc

Soror viết: Có rất nhiều người hâm mộ Ruby trong số các nhà phát triển - họ tích cực quảng cáo và ngưỡng mộ ngôn ngữ này. Tuy nhiên, mức độ phổ biến của nó đang tăng lên với tốc độ chậm. Về cơ bản ngôn ngữ này là sự kết hợp giữa lập trình chức năng và lập trình mệnh lệnh.

Nhà phát triển cho biết nơi tốt nhất để học Ruby là RubyMonk.

Luyện tập

Trước khi thực hiện vấn đề thực tế Soror khuyên bạn nên tạo ngay hồ sơ trên GitHub - kho lưu trữ trực tuyến để lưu trữ, quản lý và xuất bản mã. Bạn có thể bắt đầu làm quen với nền tảng này bằng hướng dẫn “Xin chào thế giới” hoặc một khóa học tương tác.

Bạn có thể bắt đầu phát triển bằng cách tạo blog riêng(hướng dẫn lập trình blog bằng React và Node) hoặc lịch (hướng dẫn lập trình lịch trong C# và .Net).

Các bài học miễn phí cũng có thể được tìm thấy trên Free Code Camp:

  • Đồng hồ bấm giờ Pomodoro (giao diện người dùng).
  • Câu lạc bộ giao dịch (đầy đủ).

Tôi chào mừng bạn đến với blog của tôi một lần nữa và hôm nay tôi sẽ cố gắng trả lời câu hỏi, làm thế nào để trở thành một lập trình viên web từ đầu càng nhanh càng tốt? Tôi sẽ nói ngay rằng về nguyên tắc, điều này có thể thực hiện được đối với bất kỳ người nào, tôi không thấy bất kỳ hạn chế nào về vấn đề này. Điều quan trọng nhất là mong muốn và sự kiên trì của bạn.

Bước đầu tiên

Đầu tiên bạn cần phải xác định mục đích đào tạo của mình là gì? Cho bản thân hay làm việc trong một công ty danh tiếng với mức lương cao và cơ hội phát triển nghề nghiệp? Dù câu trả lời là gì thì bạn cũng có thể muốn bắt đầu với những bài học miễn phí. Và sau đó tôi sẽ cung cấp một số trang web nơi bạn có thể được đào tạo gần như miễn phí, nhưng ở một mức độ nhất định.

Tất nhiên, vấn đề sẽ không kết thúc ở lý thuyết, tất cả kiến ​​​​thức thu được cần phải được áp dụng vào thực tế vài chục lần - khi đó nó sẽ thấm vào đầu bạn tốt hơn nhiều, vì vậy thậm chí có thể đánh thức bạn vào ban đêm sau đó và hỏi: “@keyframes hoạt động như thế nào trong css?”- bạn sẽ kể mọi thứ một cách chi tiết.

Vì vậy, bước đầu tiên này là phải biết bạn cần gì. Để làm điều này, tôi khuyên bạn nên truy cập một cổng CNTT rất phổ biến - Geekbrains. Ở đó, bằng cách cuộn trang một chút, bạn có thể xem những lĩnh vực nào được dạy trên cổng thông tin. Chúng tôi quan tâm đến nghề nghiệp Nhà phát triển web- về bản chất đây là một lập trình viên web.

Ở phía dưới cùng, bạn có thể thấy những gì bạn sẽ học nếu bạn trả tiền cho việc đào tạo.

Tôi cố tình cắt bớt ảnh chụp màn hình này một chút để cho bạn thấy bạn cần công nghệ nào trước tiên.

Lập trình viên web cần biết những gì?

Vì vậy, như bạn có thể thấy, đây là:

  1. HTML/CSS - ngôn ngữ cơ bảnđánh dấu và thiết kế các trang web, nếu không có chúng thì không thể tưởng tượng được việc xây dựng trang web. Đây là cơ sở, nhất công nghệ đơn giản mà bạn nên nghiên cứu đầu tiên.
  2. PHP là vũ khí chính của một lập trình viên web. Ngôn ngữ này được sử dụng để tạo truyền thông xã hội, cửa hàng trực tuyến, khung, công cụ và nhiều hơn nữa. Nhờ nó mà hầu hết các dịch vụ trực tuyến, biểu mẫu bình luận, đăng ký trên trang web, v.v. đều hoạt động.
  3. JavaScript là ngôn ngữ lập trình dành riêng cho web; với sự trợ giúp của nó, một trang có thể được lập trình để thiết kế của nó thay đổi khi các sự kiện khác nhau xảy ra. Ví dụ: khi bạn nhấp vào cửa sổ, nó sẽ mở rộng, v.v. Có rất nhiều ví dụ có thể được đưa ra.

Nhưng đây chỉ là cấp độ cơ bản nhất, thực tế, nếu muốn trở thành chuyên gia, bạn sẽ phải học hàng chục công nghệ bằng cách này hay cách khác. Đây là một phần danh sách của họ:

Tôi có thể học tất cả những điều này ở đâu?

Theo hiểu biết của tôi, có 3 cách chính để học để trở thành lập trình viên web:

  1. Đọc các bài viết và tài liệu miễn phí trên Internet, xem các bài học và khóa học video miễn phí. Bằng cách này, bạn có thể có được căn cứ, nhưng bạn sẽ không thể tiến xa hơn cấp độ đầu vào!
  2. Mua khóa học trả phí. Tôi chọn phương án này vì tôi đang học xây dựng trang web không phải để làm việc cho một công ty mà cho chính bản thân mình nên tôi hài lòng với các khóa học. 1 khóa học hợp lý trên RuNet có giá từ 3 đến 7 nghìn rúp. Cá nhân tôi chỉ chi khoảng 40-50 nghìn rúp cho khóa học và tôi không hối hận vì... Tôi đã thu được rất nhiều kiến ​​​​thức để có thể áp dụng vào thực tế và bắt đầu kiếm tiền.
  3. Mua chương trình đào tạo từ xa chính thức với người cố vấn. Đây là lựa chọn đắt nhất, sẽ có giá 40-150 nghìn rúp. Tất nhiên, xét về hiệu quả thì nó là tốt nhất. Ví dụ, chương trình đào tạo như vậy có thể được mua tại đại học trực tuyến Geekbrain.

Các nền tảng tốt để đạt được kiến ​​thức cơ bản về html, css, php và js sẽ là Magisters.org, HtmlAcademy.ru và phần cao cấp của Web4myself.com(mặc dù được trả phí nhưng quyền truy cập vào nó chỉ hơn 500 rúp mỗi tháng và có rất nhiều bài học ở đó).

tốt và sự lựa chọn tốt nhất Tôi thấy giống nhau Geekbrains- bởi vì mọi thứ ở đây đều được trả phí và nghiêm túc, bạn sẽ đạt được kết quả thực sự dưới dạng các trang web do chính tay bạn tạo ra chứ không chỉ đưa ra một lý thuyết lỗi thời. Ngoài ra, bạn có thể nhận được lời khuyên từ một người cố vấn thực sự ở đó.


Như bạn có thể thấy, việc đào tạo để trở thành nhà phát triển web tốn 6-8 nghìn rúp mỗi tháng và kéo dài tới 11 tháng, sau đó, nếu bạn không lười biếng, bạn sẽ trở thành một chuyên gia thực sự được săn đón. Tôi hiểu rằng điều này có thể tốn kém đối với hầu hết các bạn, nhưng đó là con đường ngắn nhất để trở thành chuyên gia trong nghề này.

Kết quả là bạn có thể có được bản tóm tắt hợp lý này:


Và những kỹ năng này:

Nếu bạn quyết định tự học, bạn có thể tiết kiệm được rất nhiều và cũng có thể đạt được kết quả tương đối tốt. Điểm trừ duy nhất là bạn sẽ phải thu thập kiến ​​thức và các khóa học về công nghệ khác nhau theo đúng nghĩa đen từng mảnh.

Ví dụ: trong 11 tháng, Geekbrains hứa sẽ dạy cho bạn các công nghệ sau: HTML/CSS, PHP, JS, NodeJS, AngularJS, Yii. Mặt khác, để tìm công việc đơn giản hoặc bắt đầu làm trang web cho chính mình, bạn không cần phải biết hết. Tôi đã nói cơ sở là gì. Đây là html, css, php, javascript. Nhưng thực tế là mỗi năm, yêu cầu đối với các nhà phát triển web ngày càng tăng và nếu muốn có kết quả nghiêm túc, bằng cách này hay cách khác, bạn sẽ phải nghiên cứu. công nghệ hiện đại và xu hướng.

Các khóa học về PHP và framework


TRÊN khoảnh khắc này có một khóa học tuyệt vời PHP7 và MySQL từ đầu đến bậc thầy, mà tôi đã đích thân trải qua và thậm chí còn viết một bài đánh giá riêng về nó. Tôi nghĩ khóa học này thật tuyệt vời, nó mang lại cơ sở lớn theo php hiện đại.

Sách cũng có quyền sống. Sẽ rất hữu ích khi đọc chúng để mở rộng kiến ​​thức của bạn trong bất kỳ lĩnh vực nào. Và bạn có thể đọc rất nhiều về PHP. Ví dụ, điều này.

Bạn không cần phải biết mọi thứ

Nếu bạn chỉ học javascript (chứ không phải php), bạn sẽ có thể làm việc nhà phát triển front-end, và nếu ngược lại, hãy thử sức ở phần phía sau. Nói chung, ngay cả với một chút kiến ​​​​thức, bạn đã có thể kiếm được thứ gì đó từ việc xây dựng trang web, nhưng bạn càng biết nhiều thì tiềm năng của bạn càng lớn.