Course "Basics of Programming"

    Hello. We, the BEEGEEK team , are launching a course on the basics of programming . In this article I will explain why you created such a course, about its content and answer frequently asked questions.

    Immediately, I note that this course is not " ideal . " It has everything you need for an easy and smooth start. Waiting for feedback from listeners to improve our course! So let's go!

    Problem


    The process of solving a problem using a computer system consists of several stages:

    1. formulation of the problem
    2. formalization
    3. algorithmization
    4. programming
    5. testing

    Each stage is a whole set of skills that beginners cannot learn programming languages. In the process of learning programming, i.e. the ability to implement a solution to a problem in a certain programming language; it is difficult for students to get to the programming stage if they are not able to solve problems at all. Numerous textbooks in print and electronic form are aimed primarily at the description of the syntax of the language, and do not allow to develop the ability to solve a problem or write it.

    With the development of network technologies, a large number of various automatic verification systems have emerged that allow you to verify the correctness of the solution without the participation of a teacher. However, they are aimed at students who are ready to write a completeprogram, i.e. ready to take all the steps to get a solution, perhaps without realizing them.

    Thus, people who start their way as a programmer stop at the very beginning , since they cannot move from simple exercises to syntax to more professional tasks that require a whole range of skills:

    • The ability to read and understand already existing code. A modern developer most often works in a team or continues the work of his predecessors, so he should be able to isolate the author’s intention from the existing code.
    • The ability to present how the written text of the program will work. The development of large professional applications can lead to the fact that compiling the code and seeing its performance does not seem very often, so the ability to mentally run the code for execution can save a large number of man-hours.
    • The ability to test the program in the mental mode, without using specialized systems. It is this skill that allows us at the stage of writing a program to prevent numerous mistakes. Also, drawing up trace tables helps to reveal an error in the program, when it becomes clear that the output data do not coincide with the reference data.
    • Ability to build hypotheses of inoperability of the program code and test the hypothesis. When an error is found in the output of the program, students often try using random changes to the program text to tailor the solution to the correct conclusion. “And what if you try it like this?” - such an approach is characteristic of novice programmers who are not able to analyze a set of input and output data.

    Solution to the problem


    The course program at a basic level covers the practical basics of programming. During the training, many small and interesting tasks are to be solved, in which you can practice the ability to read code , analyze ready-made programs , and also write your own program code .

    This experience will be useful to anyone who wants to delve into the study of programming. It is hardly possible to learn how to program without practice, so quite a lot of tasks are offered as homework.

    Course content


    The course consists of the following modules:

    1. Data types. Variables. In this module, learn to enter and display information. Let's get acquainted with the concept of "variable", with which we will store some information. Let's see what data types exist, because its type is associated with its three properties: the form of the internal representation , the set of accepted values and the set of acceptable operations .
    2. Conditional operator. In this module we will learn to skip or execute a certain block of code depending on a certain condition. Consider a short and complete conditional statement. Let's sort the " switch-case " statement .
    3. Cycle operators The largest and most important module. In this module we will analyze a loop with a for counter , a loop with a while precondition . Also consider the loop control statements: break , continue . Let us analyze nested loops, tasks about sequences, minimax problems, enumeration tasks and tasks for analyzing digits of a number.
    4. Strings and characters. In this module we will learn more about the symbols, namely, how they are represented in the computer, what operations can be performed. We will also talk about strings and how they are related to characters.
    5. Arrays Large module with lots of practical tasks. In this module we will get acquainted with arrays. Consider how to declare, fill, operate with the elements of the array. Also we will get acquainted with multidimensional arrays, in particular with a two-dimensional array.
    6. Functions. In this module we will talk about how to structure the program. We study the main " building block " of programming - functions. Consider examples where it is appropriate to write and use a function.

    Who is this course for?


    The course is introductory and most suitable for students who have no programming experience.

    What programming language will the course take?


    The course will be held in the C # programming language (C Sharp), however, this course is not tied to one programming language, since it covers basic concepts and constructions that include all modern languages. You can solve problems in any of the modern programming languages.

    Where will the course take place?


    This course will take place on the Stepik educational platform . Already, you can sign up for the course .

    What besides learning a programming language will be on the course?


    In addition to learning a programming language, we will touch on the basic search algorithms, algorithms with strings, number theory .

    What is par for the course?


    The course will be absolutely free !

    Sign up for a course! Waiting for your feedback to improve the course!

    Also popular now: