JavaRush /Blog Java /Random-MS /Bagaimana untuk bertukar daripada pengekod biasa menjadi ...

Bagaimana untuk bertukar daripada pengekod biasa menjadi pembangun yang hebat? Pembelajaran Sains Komputer

Diterbitkan dalam kumpulan
Dunia moden IT dan pembangunan perisian agak keras - keperluan yang tinggi untuk kelayakan pengkod, perubahan berterusan dan daya saing yang semakin meningkat pakar yang bekerja dalam bidang ini untuk sentiasa mendidik diri mereka dan membangun. Pembelajaran berterusan diperlukan walaupun untuk kekal sebagai pakar yang dicari, kerana "mendapatkan kehidupan" semudah membedil buah pir. Bagaimana untuk bertukar daripada pengekod biasa menjadi pembangun yang hebat?  Pembelajaran Sains Komputer - 1Dalam penerbitan di JavaRush, kami cuba membantu pembaca membangun sepenuhnya dan belajar sendiri untuk menjadi setanding yang mungkin dalam dunia pembangunan IT yang menggoda. Dalam artikel hari ini kita akan bercakap tentang pendidikan diri dalam disiplin yang sangat luas - Sains Komputer. Kami akan melihat apa sebenarnya yang termasuk dalam konsep sains komputer (CS) sedikit kemudian, tetapi buat masa ini mari kita cuba menjawab soalan: mengapa, sebenarnya, seorang pengaturcara harus mempelajari subjek CS dan berusaha untuk meningkatkan dalam bidang ini .

Sains Komputer - mengapa mengajar?

“Pengaturcaraan bukanlah sesuatu yang anda tahu. Ia sesuatu yang anda boleh fikirkan.” Chris Pine, pakar pengaturcaraan, pengarang buku dan tutorial. "Dalam beberapa cara, pengaturcaraan adalah seperti lukisan. Pada mulanya, anda hanya mempunyai kanvas dan bahan kosong. Anda perlu menggunakan gabungan sains, seni dan kraf untuk memikirkan apa yang perlu dilakukan dengan semua ini. Andrew Hunt, pengarang buku terlaris The Pragmatic Programmer dan pengarang bersama Agile Manifesto. Tidak sukar untuk memahami ke mana arah tuju kita. Untuk menjadi pengaturcara yang benar-benar baik, atau semata-mata untuk naik sekurang-kurangnya satu langkah di atas pengkod biasa, anda perlu mempunyai pengetahuan yang paling luas dan pada masa yang sama dalam pelbagai bidang, sebagai tambahan kepada bahasa pengaturcaraan itu sendiri. Dan penguasaan disiplin yang termasuk dalam konsep CS adalah salah satu tempat pertama di sini.

Disiplin Sains Komputer

Mari kita lihat apakah subjek yang termasuk dalam bidang sains komputer. Untuk penerangan ringkas tentang disiplin dengan alasan untuk mempelajarinya, kami akan menambah cadangan untuk buku terbaik dan siri video kuliah percuma terbaik mengenai subjek daripada, mungkin, panduan bahasa Inggeris terbaik untuk sains komputer, yang ditulis oleh Oz Nova dan Myles Byrne, guru di Sekolah Sains Komputer Bradfield di San Francisco.
  • Pengaturcaraan

    Pengaturcaraan adalah asas dan disiplin asas sains komputer; kebanyakan pelajar mula mempelajari kursus CS dengannya. Kursus pengaturcaraan CS terbaik akan berguna bukan sahaja untuk pemula, tetapi juga untuk pengekod berpengalaman yang mungkin terlepas konsep dan model pengaturcaraan tertentu apabila mempelajarinya buat kali pertama.

    Лучшая книга: “Структура и интерпретация компьютерных программ” (Structure and Interpretation of Computer Programs). Authorы: Джеральд Сассман (Gerald Sussman) и Хэл Абельсон (Hal Abelson).

    А на JavaRush, кстати говоря, всем желающим доступен для изучения легендарный гарвардский курс “CS50. Основы программирования”, fully переведенный на русский.

    Лучшая видеолекция: Brian Harvey’s Berkeley CS 61A

  • Алгоритмы и структуры данных

    Знание наиболее распространенных алгоритмов и структур данных помогает решать разного рода задачи, а это очень важно в любой из областей компьютерных наук, включая, конечно, и разработку программного обеспечения.

    Лучшая книга: The Algorithm Design Manual. Author: Стивен Скьена (Steven Skiena).

    Лучшая видеолекция: лекции Стивена Скьены

  • Компьютерная архитектура

    Знание компьютерной архитектуры, то есть понимание того, How на самом деле работает компьютер, является еще одной важной частичкой пазла, без которой попытки построения программных конструкций и моделей часто оказываются неудачными.

    Лучшая книга: “Архитектура компьютера и проектирование компьютерных систем” (Computer Organization and Design). Authorы: Дэвид Паттерсон (David Patterson) и Джон Хеннеси (John Hennessy).

    Лучшая видеолекция: Berkeley CS 61C

  • Операционные системы

    Практически весь code, написанный программистом, будет выполняться операционной системой, поэтому знание принципов работы ОС также является важным элементом.

    Лучшая книга: “Введение в операционные системы” (Operating Systems: Three Easy Pieces). Authorы: Андреа Арпачи-Дюссо (Andrea Arpaci-Dusseau) и Ремзи Арпачи-Дюссо (Remzi Arpaci-Dusseau).

    Лучшая видеолекция: Berkeley CS 162

  • Компьютерные сети

    Мало что в современном ИТ может обойтись без использования Интернета, поэтому ИТ-специалистам важно понимать, How Всемирная сеть работает, чтобы использовать ее потенциал по полной.

    Лучшая книга: Computer Networking: A Top-Down Approach. Authorы: Джеймс Куросе (James Kurose), Кит Росс ( Keith Ross).

    Лучшая видеолекция: Stanford CS 144

  • Математика для computer science

    Поскольку компьютерные науки, по сути, являются ответвлением прикладной математики, знание этого предмета тоже будет очень полезным практически в любой профессии, связанной с программированием. А также даст вам конкурентное преимущество перед теми, кто этой дисциплиной не владеет.

    Лучшая книга: Mathematics for Computer Science. Authorы: Альберт Р. Мейер (Albert R. Meyer), Эрик Леман (Eric Lehman) и Фрэнк Томсон Лейтон (Frank Thomson Leighton).

    Лучшая видеолекция: Tom Leighton’s MIT 6.042J

  • Базы данных

    Pangkalan data adalah bidang yang agak baru dalam sains komputer, dan masih tidak ramai pakar di dalamnya. Data ialah satu lagi elemen utama CS kerana ia menyokong program yang paling penting, tetapi hanya sedikit orang yang memahami cara sistem pangkalan data sebenarnya berfungsi.

    Buku terbaik: Bacaan dalam Sistem Pangkalan Data. Pengarang: Joseph M. Hellerstein dan Michael Stonebraker.

    Kuliah Video Terbaik: Joe Hellerstein Berkeley CS 186 Как из обычного codeера стать крутым разработчиком? Изучаем Computer Science - 2

  • Bahasa dan penyusun

    Memahami cara bahasa pengaturcaraan dan penyusun secara teknikal berfungsi membolehkan anda meningkatkan kemahiran kod dan pengaturcaraan anda. Ia juga memudahkan untuk mempelajari bahasa baharu, yang juga amat penting bagi mana-mana pembangun dalam jangka panjang.

    Buku terbaik: Penyusun: Prinsip, Teknik dan Alat. Pengarang: Alfred Aho, Monica S. Lam, Ravi Sethi, Jeffrey Ullman.

    Kuliah video terbaik: Kursus Alex Aiken di Lagunita

  • Sistem teragih

    Hari ini, kebanyakan sistem diedarkan. Komputer dan program menjadi lebih kompleks, dan pengetahuan tentang sistem teragih akan berguna untuk memastikan perisian anda berjalan dengan betul dan lancar.

    Buku Terbaik: Sistem Edaran, Edisi Ke-3. Pengarang: Maarten van Steen dan Andrew S. Tanenbaum.

    Kuliah Video Terbaik: CS 436: Sistem Komputer Teragih

Petua Belajar Sains Komputer

Dan akhirnya, beberapa nasihat untuk mereka yang merancang untuk mula belajar disiplin CS. Как из обычного codeера стать крутым разработчиком? Изучаем Computer Science - 3
  1. Membangunkan kemahiran praktikal dalam disiplin CS

    Salah satu kelebihan CS, seperti kursus IT yang lain, ialah kemahiran teori yang baru anda perolehi boleh digunakan dengan segera dalam amalan. Jangan lupa tentang ini dan gantikan teori dengan amalan untuk mencapai hasil yang terbaik.

  2. Jangan berlengah-lengah

    Sains komputer adalah subjek yang agak kompleks, kajiannya mudah untuk segelintir orang, terutamanya pada mulanya. Itulah sebabnya, apabila mula mempelajari disiplin CS, anda perlu mengelakkan penangguhan - jangan menangguhkan penguasaan teori, penyelesaian masalah dan latihan sehingga kemudian, kerana ini bukan sahaja menjadikan pembelajaran sangat lama, tetapi kemungkinan besar tidak akan berkesan.

    Как из обычного codeера стать крутым разработчиком? Изучаем Computer Science - 4
  3. Jangan hadkan diri anda kepada satu kursus sahaja

    Jangan mengharapkan untuk mendapat semua pengetahuan yang anda perlukan dalam sesuatu mata pelajaran dari satu kursus, tidak kira betapa bagusnya ia. Adalah lebih baik untuk merujuk sekurang-kurangnya beberapa sumber maklumat untuk mendapatkan pemahaman yang lebih luas tentang subjek tersebut.

  4. Cari orang yang berfikiran sama

    Kedengarannya agak konyol, tetapi belajar dengan berkesan, seperti melakukan banyak perkara lain dalam hidup, paling baik dilakukan sebagai sebahagian daripada sekumpulan orang yang berfikiran sama. Mencari kumpulan untuk belajar CS boleh memberi manfaat kerana beberapa sebab. Ini akan membantu anda belajar dengan lebih berkesan, menyelesaikan tugas dan masalah bersama-sama, membandingkan kemajuan pembelajaran dan kemahiran anda dalam menggunakan pengetahuan baharu dengan orang lain.

  5. Belajar menulis perkataan, bukan hanya kod

    Satu lagi nasihat biasa daripada ramai pakar untuk pengaturcara yang mempelajari CS untuk meningkatkan kemahiran mereka dan meningkatkan tahap profesional mereka: belajar menulis (bukan kod), iaitu, meletakkan perkataan ke dalam ayat dan menyusun teks daripada ayat. Kemahiran ini agak penting untuk mana-mana pembangun, dan ketiadaannya akan menghalang kemajuan bukan sahaja dalam kajian sains komputer, tetapi juga dalam aspek lain pengaturcaraan sebagai profesion.

Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION