Web apps, design patterns in web apps, development tools and version control systems, Spring framework, dependency injection, MVC, Junit, hibernate ORM, spring+hibernate integration, Middleware ve HTTP protocol, HTTP Protocol, Spring controllers, spring filters, REST APIs, HTML, CSS, Javascript, and jquery, ajax.
|
Week |
Subject |
Related Preparation |
1) |
Introduction + background: historical perspective, what is a web app?, intro to design patterns in web apps, development tools and version control systems
|
|
2) |
Java recap and introduction to the Spring Framework: spring components used in web applications, dependency injection, MVC, Junit unit testing
|
|
3) |
Database Interactions and the hibernate ORM: Relational databases, ORM concept, integration of spring+hibernate
|
|
4) |
Middleware and the HTTP protocol: Application servers, HTTP Protocol, HTTP Requests, HTTP Responses, Sessions and cookies, Spring controllers, spring filters, REST APIs and content types
|
|
5) |
Presentation Layer and User interfaces: HTML, CSS, Javascript and jquery, Spring views and template engines, ajax
|
|
6) |
MidTerm
|
|
7) |
applied project (blog engine) iteration 1: General requirements of the application, user interface design, stories for registration and login, discussion about the design of the features, source code management and deployment/development environment discussions.
|
|
8) |
applied project (blog engine) iteration 2 / Demo and retrospective of iteration 1, stories for composing a blog post, displaying a blog post
|
|
9) |
applied project (blog engine) iteration 3: Demo of iteration 2 and retro. Stories for updating a blog post and deleting a blog post.
|
|
10) |
applied project (blog engine) iteration 4: Demo of iteration 3. Stories for adding, removing tags to a post
|
|
11) |
applied project (blog engine) iteration 5: Demo of iteration 4. Stories for posting, updating, deleting comments for a post.
|
|
12) |
applied project (blog engine) iteration 6: Demo of iteration 5. Stories for adding analytics for the blog engine.
|
|
13) |
Final project presentations
|
|
14) |
Final project presentations
|
|
|
Program Outcomes |
Level of Contribution |
1) |
Comprehend the conceptual importance of the game in the field of communication, ability to implement the player centered application to provide design. |
|
2) |
Analyze, synthesize, and evaluate information and ideas from various perspectives. |
|
3) |
Analyze the key elements that make up specific game genres, forms of interactions, mode of narratives and understand how they are employed effectively to create a successful game. |
|
4) |
Understand game design theories and methods as well as implement them during game development; to make enjoyable, attractive, instructional and immersive according to the target audience. |
|
5) |
Understand the technology and computational principles involved in developing games and master the use of game engines. |
|
6) |
Understand the process of creation and use of 2D and 3D assets and animation for video games. |
|
7) |
Understand and master the theories and methodologies of understanding and measuring player experience and utilize them during game development process. |
|
8) |
Comprehend and master how ideas, concepts and topics are conveyed via games followed by the utilization of these aspects during the development process. |
|
9) |
Manage the game design and development process employing complete documentation; following the full game production pipeline via documentation. |
|
10) |
Understand and employ the structure and work modes of game development teams; comprehend the responsibilities of team members and collaborations between them while utilizing this knowledge in practice. |
|
11) |
Understand the process of game publishing within industry standards besides development and utilize this knowledge practice. |
|
12) |
Pitching a video game to developers, publishers, and players; mastering the art of effectively communicating and marketing the features and commercial potential of new ideas, concepts or games. |
|