
We continue to publish lectures on the legendary Harvard CS50 course, which we translate and voice specifically for JavaRush. We are glad to present you the 16th series with the continuation of the consideration of the PHP language (now for the development of web applications), as well as acquaintance with databases and MySQL. There are 24 lectures in total, gradually we will translate everything. Lecture under the cut in the list of all lectures translated to date.
What do you learn by listening to this course:')
- Basics of computer science and programming;
- Concepts of algorithms and algorithmic thinking. What tasks can be solved using programming and how?
- Concepts of abstraction, data structure, encapsulation, memory management. Basics of computer security. Software development and web development;
- Basics of programming language C and Scratch;
- Basics of databases and SQL;
- Web development: the basics of CSS, HTML, JavaScript and PHP;
- Basics of preparing presentations of programming projects.
List of translated lectures:Lecture 1 : introductory, introduces the general concepts of programming languages, as well as the team of teachers and the system of upcoming classes.
Lecture 2 : It is also introductory and introduces the general concepts of programming languages, continuing the theme of the first lecture.
Lecture 3 : introduces the concept and functions of compiling and tells how bugs appear in programs (starting with the very first “computer bug”), how to recognize them and how they can be triggered.
Lecture 4 : introduces the types of data and cycles, some basic functions and the basic scheme of drawing up the program, and also demonstrates the limited capabilities of computers and historical examples of bugs that did not pass without a trace.
Lecture 5 : continuation about bugs, plus reveals the concept of the program structure, explains why functions are needed inside the code, what is the importance of the range of values, and introduces the function strlen. You will also learn from it how in CS50 you are struggling with amateurs to write off, and learn how to save computer's RAM in order to avoid segmentation errors.
Lecture 6 : Basics of cryptography, arrays and command line arguments.
Lecture 7 : introduces the basic methods of data sorting. David Maelen talks about bubble sorting, sorting by selection, insertion, and merging, and viewers test them in practice.
Lecture 8 : about data sorting by merging, as well as a brief excursion into the world of bitwise operations.
Lecture 9 : Continuation of the acquaintance with the operator conditions - if, introducing the concept of recursion, as well as discussing the scandal of the Volkswagen concern and the problem of computer security. The lecturer examines the swap function in detail, demonstrates how to work with the program debugger, and reveals the structure and mechanics of the RAM.
Lecture 10 : on different methods of compiling lists, saving program information and using pointers and pointers.
Lecture 11 : the study of pointers, analysis of the structure of the functions of the library CS50, familiarity with memory leaks, the introduction of the concept of linked list and other data structures with a detailed demonstration.
Lecture 12 : about the features of the stack, the queue and the linked list. Analysis of possible problems related to memory access. The structure of a binary tree, a prefix tree and work with file compression are also considered here.
Lecture 13 : Data Hashing, Network Protocols, and How to Protect Yourself from Suspicious Strangers with Encrypted Connections.
Lecture 14 : Introduction to web programming and familiarity with HTML and CSS.
Lecture 15 : Introduction to the PHP programming language and HTML markup language.
Lecture 16 : continued consideration of the PHP language, now for developing web applications, as well as familiarity with databases and MySQL.