SamyakComputer ClassesShakarpur

Course

Flutter

One codebase for Android and iOS, taught through to store release — because the parts that defeat people are release signing and store review, not widgets.

  • Duration: 5 months
  • Classroom · Online live
  • Level: intermediate

What you will be able to do

Who this course is for

Syllabus

8 modules · 5 months

  1. Module 1. Dart

    • Types, null safety and why it changes how you write
    • Functions, classes and mixins
    • Collections and the methods used daily
    • Futures, async and await
    • Streams and reactive thinking
  2. Module 2. Flutter fundamentals

    • Everything is a widget, and what that actually implies
    • Stateless and stateful widgets, and the rebuild cost
    • Layout widgets — Row, Column, Stack, Expanded and Flexible
    • Constraints, and reading the layout errors everyone hits
    • Themes, typography and consistent styling
  3. Module 3. Navigation and structure

    • Routes, named routes and passing arguments
    • Nested navigation and bottom navigation patterns
    • Structuring an application beyond a single folder
    • Responsive layouts across phone and tablet
  4. Module 4. State management

    • Why setState stops scaling
    • InheritedWidget and what the libraries are wrapping
    • Provider in practice
    • Riverpod and when it is worth the extra concepts
    • Choosing an approach for a given app size, and defending it
  5. Module 5. Data

    • Calling REST APIs and handling failure
    • JSON serialisation
    • Local persistence with SQLite and shared preferences
    • Offline-first thinking and syncing
    • Loading, empty and error states as first-class design
  6. Module 6. Firebase

    • Authentication flows including phone OTP
    • Firestore data modelling for mobile
    • Storage for user-generated media
    • Push notifications with Firebase Messaging
    • Security rules, and testing that they work
  7. Module 7. Platform integration and quality

    • Permissions, camera and location
    • Platform channels for native functionality
    • Accessibility on mobile — labels, contrast and target size
    • Performance profiling and reducing rebuilds
    • Testing widgets and integration flows
  8. Module 8. Release

    • App icons, splash screens and store assets
    • Build flavours for staging and production
    • Signing an Android release
    • Play Console submission, and the review issues that come up
    • Crash reporting and post-release monitoring

Tools and technologies you will use

Projects you will build

Where this course can take you

  • Flutter Developer
  • Mobile Application Developer
  • Cross-platform Developer
  • Android Developer
  • Freelance App Developer

Duration, modes and fees

Duration
5 months
Delivery modes
Classroom · Online live
Fees
Share your details for the current fee
Fees vary by batch and delivery mode. Share your details and an advisor will confirm the current fee.

Placement assistance

Every student gets placement assistance — that is what 100% placement assistance means. It is support for all, not a job for all. We do not promise a specific salary, a specific number of interviews, or placement at any named company, and you should be wary of anyone who does.

What is included

  • A place in the monthly placement drive, held every third Saturday
  • The readiness programme every second Saturday — mock interviews and preparation
  • CV review against the specific roles you are targeting
  • Portfolio review, so your project work is presented the way a reviewer will read it
  • Access to the vacancy pool employers send directly to the Samyak network
  • Guidance on which roles realistically fit your background and which do not
  • A place in the next drive, with coaching, if you are not selected in this one

What is not included

  • Any guarantee of a job, an interview, or a particular salary
  • Placement at a named or partner company
  • Applying to jobs on your behalf
  • Support before you have completed the course and its project work
  • Visa, relocation or overseas placement assistance

The course ends at the store, not at the emulator

Most Flutter courses finish with an app running in an emulator. That is roughly seventy percent of the work, and the missing thirty percent is where people get stuck alone.

Signing configuration. Build flavours. App icons at the right sizes. Store listing requirements. The privacy declarations Play Console now asks for. A review rejection with a message that does not explain much.

Our fourth project is a signed release with store assets prepared, because finishing that once means you can do it again without help — and “I have published an app” is a materially different statement in an interview from “I built an app”.

Constraints, and the layout errors everyone hits

Flutter’s layout system trips every beginner in the same way. An unbounded height inside a Column. A Row that overflows by a specific number of pixels. Errors that name a widget you did not write.

These are not random. They come from how constraints flow down and sizes flow back up, and once that model is clear the errors become readable rather than frustrating. We teach the model explicitly in module two rather than letting you accumulate workarounds.

State management without the tribalism

There is a great deal of noise about which state management library is correct.

The useful version of this subject is narrower: understand why setState stops scaling, understand what these libraries are actually wrapping, then pick one and be able to defend the choice for a given app size.

We teach Provider then Riverpod for that reason. An interviewer asking about state management is testing whether you understand the problem, not whether you have memorised an API.

An honest note about iOS

You can write iOS code on Windows. You cannot build or publish an iOS release without macOS — that is Apple’s restriction.

This course takes Android through to a signed release completely. For iOS we cover the code and the platform differences, and explain the options for building when you do not own a Mac. Anyone promising full iOS publishing on a Windows-only setup is not being straight with you.

Questions

Flutter — frequently asked questions

Flutter or native Android — which should I learn?

Flutter if you want to build for both platforms with one codebase, which suits startups, agencies and freelance work. Native Android if you are targeting companies with an established Android team, since those roles usually ask for Kotlin specifically. Flutter has grown considerably in Indian job postings, and it is the faster route to shipping something.

Can I build iOS apps without a Mac?

You can write and test the code, but you cannot build or publish an iOS release without macOS — that is an Apple restriction, not a Flutter one. This course builds and releases for Android end to end. For iOS we cover the code and the differences; the release step needs a Mac or a cloud build service.

Do I need to know Java or Kotlin first?

No. Flutter uses Dart, which is taught from scratch here. What you do need is general programming comfort — variables, functions, classes, async — from any language. Complete beginners are better served by our Python or web development course first.

Which state management approach do you teach?

Provider first because it is simplest to understand, then Riverpod because it addresses Provider's limitations. More important than either is the reasoning — knowing why setState stops scaling and being able to defend a choice for a given app size. That reasoning is what interviews test, not library syntax.

Enquire about Flutter

Three details is all we need. A course advisor will call you back.

By submitting, you agree to be contacted about courses and accept our privacy policy.

Next step

Talk to a course advisor

Tell us what you want to learn and we will help you pick the right course, batch and mode.

Request a callback

Three details is all we need. A course advisor will call you back.

By submitting, you agree to be contacted about courses and accept our privacy policy.