Introduction to Java Programming: Writing Good Code

Learn to program in an easy and interactive way and enter the fascinating world of computer science.

Created by: Carlos Alario-Hoyos

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 0 / 100

icon
Course Description

This is an introductory course to learn programming with Java designed to teach how to code good programs in Java, understanding good as both correct and efficient. Basic principles of software engineering will be introduced to make it easier for our future self and others to reuse code. Ethical issues and the intellectual property of our programs will also be addressed in the last part of this course. Examples and case studies will be provided, so that learners can implement simple but increasingly complex programs in Java.
Emphasis is put on immediate feedback and on having a fun experience. Programming knowledge is not only useful to be able to program today's devices such as computers and smartphones. It also opens the door to computational thinking, i.e. the application of computing techniques to every-day processes.
This course is designed taking into account the subset and recommendations of the College Board in order to prepare learners for the Advanced Placement (AP) Computer Science A exam..
1. Debugging
The first week starts from basic errors that occur at compile time and at run time when developing programs, and introduces debugging as a powerful and flexible strategy to detect and correct errors. The Eclipse IDE Debugger will be used to illustrate the debugging process with practical examples. 2. Reasoning & Testing
The second week addresses formal mechanisms to test that programs do what is expected of them, introducing unit testing processes, particularized in the JUnit framework for testing programs written in the Java language. 3. Complexity
The third week analyzes programs from the point of view of efficiency in the use of resources, such as computation time and storage, and presents simple mechanisms to improve the efficiency of Java programs. 4. Software Engineering
The fourth week introduces basic principles of software engineering with the aim to improve robustness, modularity, reusability and maintainability of programs. 5. Ethics
The last week studies ethical issues related to software development, including privacy, legal issues, intellectual property rights, and social ramifications.

icon
Instructor Details

placeholder

Carlos Alario received his MSc and PhD degrees in Information and Communication Technologies from the Universidad of Valladolid, Spain, in 2007 and 2012. He is currently a postdoctoral researcher and Teaching Assistant in the Department of Telematics Engineering at the Universidad Carlos III de Madrid, Spain. ----- Es investigador postdoctoral en el Departamento de Ingeniera Telemtica, de la Universidad Carlos III de Madrid. Doctor en Tecnologas de la Informacin y las Comunicaciones e Ingeniero de Telecomunicacin, por la Universidad de Valladolid. Sus habilidades y experiencia incluyen investigacin y desarrollo en MOOCs y SPOCs, redes sociales, aprendizaje colaborativo y evaluacin de experiencias de aprendizaje. Ha estado involucrado en el diseo y puesta en marcha de MOOCs de la Universidad Carlos III de Madrid, en las plataformas MiradaX y edX y ha participado en una veintena de proyectos relacionados con tecnologa educativa. Colaborador de Universidad Galileo en proyectos de investigacin.

icon
Reviews

0.0

0 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

No reviews yet. Be the first to review this course!