Error occured ! We are notified and will try and resolve this as soon as possible.
WARNING! [2] file_put_contents(/home/gelembjuk/domains/myeducationpath.com/app/../html/cache/memory/course_24262_0_e086762d743c0218beb85ea6e1b456cae.txt): failed to open stream: No such file or directory . Line 75 in file /home/gelembjuk/domains/myeducationpath.com/html/include/class.cache.php. Continue execution. 2350615; index.php; 216.73.216.126; GET; url=courses/24262/data-structures-and-software-design.htm&; ; Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com); ; Executon time: 0 MyEducationPath.com :: edX : Data Structures and Software Design

Data Structures and Software Design

0 votes
Free Closed [?]
Data Structures and Software Design

Knowing how to code is only part of the skills needed to become a professional software developer.



This course, part of the CS Essentials for Software Development Professional Certificate program, will take your skills to the next level by teaching you how to write “good” software that appropriately represents and organizes data, is easy to maintain, and is of high quality.



As the purpose of most computer programs is to manipulate data, sometimes large quantities of it, the manner in which programs represent and organize data can have an enormous effect on the simplicity and efficiency of the code. In this course, you will learn about important core data structures such as arrays, lists, stacks, queues, sets, maps, trees, and graphs, and learn how to evaluate them and reason about their behavior and efficiency.



Most importantly, you will learn how to determine which data structure is the most appropriate for solving the problem at hand, and see how to use the implementations that are part of the Java library.



However, choosing the right data structure is only part of the challenge of developing high quality software: you must also consider the design of the classes that use those data structures. You will learn about software design principles such as modularity, functional independence, and abstraction, and apply those concepts toward writing programs that are easy to understand, easy to modify, and easy to test.



Although it is important to know how to write high quality code, professional software developers often spend a majority of their time maintaining existing code. You will also learn about software refactoring techniques for improving the design of existing code, and see how to improve code efficiency.



This course will use Java but the concepts you learn can be applied to almost all modern programming languages.


Categories:
Starts : 2017-07-03

Comments

Alternatives

-- no alternatives found for the course --
If you know any alternatives, please let us know.

Prerequisites

-- no prerequsites found for the course --
If you can suggest any prerequisite, please let us know.

Paths

No Paths inclusing the course. You can build and share a path with this course included.

Certification Exams

-- there are no exams to get certification after this course --
If your company does certification for those who completed this course then register your company as certification vendor and add your exams to the Exams Directory.

Similar courses

Courses related to the course subject

《Java程序设计》课程是使用Java语言进行应用程序设计的课程,针对各专业的大学本科生开设。课…

4G is the cutting-edge network technology that links millions of smartphones to the internet. But how does it actually work? Ideal…

SQL is the language of all databases, this course offers an easy way to master the SQL fundamentals…

Have you ever wondered how information is transmitted using your mobile phone or a WiFi hotspot? This introductory course seeks to…

Have you ever wondered how information is transmitted using your mobile phone or a WiFi hotspot? This introductory course seeks to…

Have you ever wondered how information is transmitted using your mobile phone or a WiFi hotspot? Gain an understanding of the basi…

DevOps is the union of people, process and products to enable the continuous delivery of value to end users. It is not only about…

En este curso trabajarás la definición, el desarrollo y el cierre de un proyecto de Tecnologías de la Informaci&oac…

This is a graduate course on the design and analysis of algorithms, covering several advanced topics not studied in typical introd…

Gain a deeper understanding of Spark by learning about its APIs, architecture, and common use cases. This statistics and data ana…

Let us know when you did the course Data Structures and Software Design.

Started on: Completed on:
Your grade (if any):
Comments:

Add the course Data Structures and Software Design to My Personal Education Path.

Start the course on:
Duration of study:
Notes:

Successfully added to your path.

View your path

Select what exam to connect to the course. The course will be displayed on the exam page in the list of courses supported for certification with the exam.


Notes about how the exam certifies students of the course (optional):