Mobile App Development: From Concept to Code
Method of Instruction: Onsite or Online
Language: English or French
Course Duration: 60 Hours (12 Weeks of 5 Hours Each)
Establishment: Cestar Collège, Campus Sherbrooke
The Mobile App Development course is designed to equip students with the necessary skills and knowledge to develop functional and user-friendly phone applications. This hands-on course will cover the entire app development lifecycle, from idea generation and conceptualization to coding and deployment. By the end of the course, students will have the ability to develop and publish their own mobile apps for various platforms, such as Android and iOS.
- Understand the fundamentals of mobile app development and the different platforms available.
- Learn the process of app ideation, wireframing, and prototyping.
- Gain proficiency in programming languages and frameworks commonly used for mobile app development.
- Develop skills in user interface (UI) and user experience (UX) design for mobile apps. 5. Implement core functionalities and features in mobile apps.
- Explore app testing, debugging, and performance optimization techniques. 7. Understand the app deployment process and publishing to app stores. 8. Learn best practices for app maintenance and updates.
Course Schedule and Duration
The following section is open for registration:
Section A - Spring 2023
Section B - Summer 2023
Method of Learning
A combination of online and on-site training tailored to your needs to help you get the education you need at your convenience.
Course Prerequisites and Admission
This program is great for anyone with an interest in coding and developing their own application.
- Basic Computer Skills: Students should have a fundamental understanding of using a computer, including tasks such as file management, navigating the operating system, and using common software applications.
- Mathematics Skills: A basic understanding of mathematics, including concepts such as algebra and problem-solving, can be beneficial for programming. This foundation helps with logical thinking and understanding programming concepts.
- Critical Thinking and Problem-Solving: Programming involves solving problems and breaking them down into smaller, manageable steps. Developing critical thinking skills and the ability to approach problems analytically will be helpful in the learning process.
- Familiarity with Logic and Algorithms: Having some exposure to logical reasoning and understanding how algorithms work can provide a good starting point for programming. Concepts such as flowcharts, decision-making, and conditional statements are often covered in introductory programming courses.
It's important to note that while these prerequisites are helpful, our short courses are designed to accommodate students with no prior programming experience. Therefore, it's possible to start learning programming from scratch in an introductory course.
A laptop or computer with Internet access.
Tech Requirements for Attending Cestar Online Classes
- A strong uninterrupted broadband wired or wireless (3G or 4G/LTE) connection with a minimum 600kbps bandwidth (up/down).
- A Laptop/Desktop computer equipped with a single core processor (at least 1 GHZ processing speed) or a smartphone/tablet with equivalent processing capabilities
- Good speakers/earphones to listen to the classes
- Browser - IE7+, Safari 5+, Firefox, Chrome
- Operating System - Windows XP, Mac OS 10.6, Linux distro based on 3.0 kernel, Android 5.0, iOS 10
- A strong uninterrupted broadband wired or wireless (3G or 4G/LTE) connection with a minimum 1.5Mbps bandwidth (up/down). You can also connect to the internet directly using your ethernet cable to improve your experience.
- Laptop/Desktop computer equipped with a dual core processor with at least 2 GHZ processing speed and a 4 GB RAM
- High Quality speakers/earphones to listen to the classes
- Browser & Operating System - We recommend using the latest version of the browser and operating system for an optimal online classroom experience.
Note: The course outline can be adjusted based on the specific needs and preferences of the students. Additionally, each session should include practical coding exercises and projects to reinforce the concepts learned.
Week 1: Introduction to Mobile App Development
- Overview of mobile app development platforms (Android, iOS, cross-platform) • Introduction to app development frameworks (Java, Swift, React Native, Flutter) • Setting up development environments and tools
Week 2: App Ideation and Wireframing
- Understanding target audience and market research
- Generating app ideas and selecting a suitable concept
- Basics of wireframing and prototyping tools
Week 3: User Interface (UI) and User Experience (UX) Design
- Principles of UI and UX design for mobile apps
- Designing app layouts, navigation, and interactive elements
- Implementing responsive design for different screen sizes
Week 4: Front-End Development
- Introduction to programming languages (Java, Swift) for front-end development • Building screens and views
- Handling user input and interactions
Week 5: Back-End Development
- Introduction to server-side technologies (Node.js, Firebase)
- Building APIs and integrating with databases
- Managing user authentication and data storage
Week 6: App Functionality and Features
- Implementing core features (e.g., camera, geolocation, notifications) • Working with device sensors (accelerometer, gyroscope, etc.)
- Incorporating third-party libraries and APIs
Week 7: App Testing and Debugging
- Strategies for testing mobile apps (unit testing, UI testing)
- Identifying and fixing bugs and issues
- Performance optimization and memory management
Week 8: App Deployment and Publishing
- Preparing apps for deployment (code signing, app packaging)
- Understanding app store guidelines and requirements
- Deploying apps to Google Play Store and Apple App Store
Week 9: Cross-Platform Development
- Exploring cross-platform frameworks (React Native, Flutter)
- Code sharing and reusability across multiple platforms
- Pros and cons of cross-platform development
Week 10: App Analytics and User Feedback
- Tracking app usage and user behavior
- Gathering and analyzing user feedback
- Iterative development and continuous improvement
Week 11: App Maintenance and Updates
- Managing app updates and versioning
- Bug fixes and feature enhancements
- Responding to user feedback and addressing issues
Week 12: Final Project and Wrap-Up
- Working on a final mobile app project
- Presenting and showcasing app projects
- Reviewing course concepts and next steps in app development
My name is Abdelbassit Senhadji and I have a Master's degree in physics. I am a computer science teacher since 2019. I have a strong background in programming using Python. I am working as a programmer analyst in a technology company where deep learning, artificial intelligence powdered OCR where these features are the main component of our main program.
Build your own app! Sign up for this cutting-edge class now before it fills up!
This short course is being offered at