Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    Mobile- and Web-Based Software

    A tantárgy neve magyarul / Name of the subject in Hungarian: Mobil és webes szoftverek

    Last updated: 2022. augusztus 30.

    Budapest University of Technology and Economics
    Faculty of Electrical Engineering and Informatics
    BSc Engineering IT major
    Course ID Semester Assessment Credit Tantárgyfélév
    VIAUAD02   2/0/2/f 5  
    3. Course coordinator and department Dr. Ekler Péter,
    Web page of the course https://www.aut.bme.hu/Course/mobilesweb
    4. Instructors
    Dr. Péter Ekler, assistant professor, AUT 
    Gábor Gincsai, teaching assistant, AUT 
    5. Required knowledge Object oriented programming
    7. Objectives, learning outcomes and obtained knowledge The aim of the course is to introduce students to the world of mobile and web software. In the classes, students will learn about the basics of software development for mobile devices. They gain experience in the major mobile platforms, as well as the tools required for software development for the platforms. They learn about the specifics of development for mobile devices, ergonomic issues and the best practices that can be applied during development. During the class students will also learn the basics of modern web technologies, they can learn about the specifics of web development, as well as the creation of custom sites.
    8. Synopsis
    Lecture

    1.
    Introduction. Web and mobile clients in the architecture of modern software systems. General characteristics of mobile devices. Special hardware for new mobile devices. Overview of mobile platforms. The concept of mobile software development: a different approach to PC development. Characterization of the players of the mobile market. Development of mobile networks.

    2.
    Software development tools for mobile devices in general: programming languages, code libraries, development tools (SDK, Emulator). Introducing the basics of the Android platform. Description of project elements. Mechanism of translation.
     
    3.
    The lifecycle of modern mobile applications from an Android perspective. Android application components and their role, as well as typical use cases. Design and implementation of multi-screen applications. General state saving for life cycle change management.

    4.
    Design and implementation of the user interface of mobile applications. Presentation of resources related to the user interface, resource qualifiers. Manage layouts and views.

    5.
    Presentation of the principles of persistent data storage in a mobile environment. Key-value based data storage options. Relational data management, data filtering, searching and sorting. Stock management.

    6.
    Use of short and long-term network communication technologies supported on mobile platforms. Management of asynchronous network operations, thread management. Handling HTTP connections. User interface notification in case of asynchronous execution.
     
    7.
    Location based services in a mobile environment. Satellite and network-based positioning techniques, advantages, disadvantages. Map management principles.

    8.
    Introduction to the world of web technologies. Client-server architecture based on HTTP (session, cookie, etc.). Description of dynamic web concept. Introducing the HTML language, its elements and frequently used related tools. Introducing the development environment.

    9.
    Presentation and applicability of the CSS style description language. Defining own classes. Additional CSS solutions. Flexbox, Bootstrap, SCSS.

    10.
    Presentation of the basics of the JavaScript language, use of forms, validation. Description of advanced JavaScript libraries.

    11.
    Best practices for creating maintainable JavaScript source code. Introduction to HTML DOM, overview of frequently used HTML and JavaScript solutions.

    12.
    Creation of dynamic web content. Introducing the basics of jQuery. Mobile Web; advantages, disadvantages and opportunities.
     
    13.
    Tools for creating dynamic web interfaces, the possibilities of AJAX. Basics and areas of application of REST communication, typical areas of use of the JSON format, cross-domain policy. 
    9. Method of instruction Lectures and laboratories
    10. Assessment
    During the season

    During the season:

     

     

    (1) Completion of labs (at least 4 successful mobile and 4 successful web labs. (2) The acquisition of mid-semester knowledge is checked 2 times during the diligence period in the form of a large closed room. Conditions for completing the subject: 4-4 successful mobile and web labs. Adequate indoor performance (at least 40%) until the end of the diligence period in both indoor locations. Merit weighting: 20% lab results, 40-40% the results of the two ZH.

    Exam period 

    - 

    11. Recaps
    Both midterms can be replaced during the replacement week according to the TVSZ. The replacement period in the two-cycle training is the so-called make-up week (the week between the end of the diligence period and the beginning of the examination period), the first 3 weeks of the examination period in the five-year education (see TVSZ § 16. (2)).

    It is not possible to replace the labs: the replacement includes the fact that we only take into account the results of less than 2/3 of the labs.
    12. Consultations

    If required, in consultation with the lecturer and the laboratory leader.
    13. References, textbooks and resources

    Forstner Bertalan, Ekler Péter, Kelényi Imre, Bevezetés a mobilprogramozásba, SZAK Kiadó Kft., ISBN: 9789639863019 

    Ekler Péter, Fehér Marcell, Forstner Bertalan, Kelényi Imre, Android-alapú szoftverfejlesztés, SZAK Kiadó Kft., ISBN: 9789639863279 

    Paul Ferrill, Pro Android Python with SL4A, Apress, ISBN: 9781430235699 

    Ovidiu Iliescu, Programming Pro Java ME Apps. Apress, ISBN: 9781430233275 

    RetoMeier, Professional Android 2 Application Development, Wrox, ISBN: 9780470565520 

    Bruce Lawson, Remy Sharp, Introducing HTML5 2nd, New Riders, ISBN: 9780321784421 

    Elisabeth Robson, Eric Freeman, Head First HTML with CSS & XHTML, O’Reilly, ISBN: 9780596101978 

    David Flanagan, JavaScript: The Definitive Guide, 6th Edition, O’Reilly, ISBN: 9780596805524 

    Jonathan Chaffer, Karl Swedberg, Learning jQuery 3rd, O’Reilly, ISBN: 9781849516549 

    Class presentations. 

    14. Required learning hours and assignment
    Contact hour: 56
    Mid-semester preparation for classes: 10
    Preparation for midterms: 50
    Mastering selected written course material: 34

     
    Total: 150
    15. Syllabus prepared by
    Dr. Péter Ekler, assistant professor, AUT 
    Gábor Gincsai, teaching assistant, AUT 
    IMSc program
    The students participating in the program can solve extra tasks during the laboratory sessions, and sometimes the homework assignment can be more complicated. With the help of these, they can get to know the topic of the subject at a deeper level, and learn it through the more complex tasks.
    IMSc score 25 IMSc points can be obtained with extra lab tasks (5 points) and the part over 90% on the two ZH is worth 10-10 points per %.