Anonim

Moi uczniowie tworzą aplikacje na iPhone'a i iPada i umieszczają je w App Store. Tworzenie dobrze zaprojektowanej aplikacji może być zniechęcające i czasochłonne, wymagając wiedzy programistycznej, a także interfejsu użytkownika i metodologii obsługi. Dlatego od samego początku angażujemy naszych uczniów w proces projektowania aplikacji, aby pomagać innym - proces, w którym kodowanie i programowanie są niezbędne, ale wtórne do rozwijania empatii i umiejętności projektowania zorientowanego na proces.

Praca wstecz

Nasze podejście, zwane Coding By Design, zaczyna się od rozwiązywania prawdziwych problemów dla prawdziwych ludzi. Zaczynamy od myślenia projektowego o tworzeniu aplikacji, następnie przechodzimy do prototypu, wielokrotnych iteracji opartych na prawdziwych opiniach, a na końcu odgórnego podejścia do rozwiązywania problemów z kodowaniem i zagadek związanych z tworzeniem aplikacji.

Kodowania tradycyjnie uczy się od tyłu, zaczynając od najmniejszej linii kodu: „witaj, świecie!” Wielu studentów poddaje się, zanim nauczy się bardziej skomplikowanych rzeczy, takich jak grafika i interakcje. To tak, jakby nauczyć kogoś budować motocykl, zaczynając od najmniejszego sprzętu. Część jest całkowicie odłączona od całości. Niewielu doszedłoby nawet do momentu zbudowania jednego elementu motocykla, nie mówiąc już o całej maszynie. Jeśli chcesz zainteresować kogoś ciężką pracą przy budowie motocykla, prawdopodobnie powinieneś go wyjąć i pozwolić zakochać się w doświadczeniu jazdy na motocyklu. Następnie możesz przejść przez główne komponenty.

Z tego samego powodu zaczynamy uczyć programowania, rozmawiając o projektowaniu aplikacji. Większość ludzi już zna się na aplikacjach, które używały ich na smartfonie lub tablecie. Wzywamy dzieci do „zaprojektowania aplikacji, która robi coś pożytecznego”. To przyjemne zajęcie grupowe dla podejścia opartego na myśleniu projektowym: zidentyfikuj problem i pracuj nad nim systematycznie.

Gdy dzieci mają pomysł, projektujemy interfejs, rysując każdy ekran swojej aplikacji na osobnej karcie indeksu. Pozwala im to zrobić prototyp papierowy, który można przetestować z prawdziwymi użytkownikami. Za każdym razem, gdy ktoś „stuknie” przycisk lub element sterujący, może przejść do następnej karty. Zmiany są znacznie łatwiejsze, gdy używasz ołówka i papieru zamiast kodu. Często odwołujemy się do Wytycznych Apple dotyczących interfejsu użytkownika, które zawierają szczegółowe informacje na temat tego, co czyni aplikacje łatwymi i intuicyjnymi w użyciu.

Następnie mamy dzieci, które przekształcają swoje papierowe prototypy w działającą aplikację na iPhone'a, robiąc zdjęcia każdemu z ich widoków i przesyłając je do InvisionApp.com, internetowego narzędzia do makiety, które pozwala zdefiniować punkty aktywne na obrazach, które można połączyć z innymi wyświetlenia. Projekt można następnie zbudować i przenieść na iPhone'a, gdzie wygląda jak prawdziwa aplikacja.

Gdy ich prototypy przeszły wiele interakcji, nasi uczniowie podchodzą do pomysłu budowy aplikacji i często nawiązują kontakt z ludźmi w społeczności, którzy naprawdę potrzebują aplikacji, która rozwiąże istniejący problem. Następnie przechodzimy do bezpłatnego oprogramowania Apple do projektowania aplikacji Xcode i Swift, języka używanego do tworzenia aplikacji na Mac, iPhone i iPad. Wielu naszych uczniów przechodzi przez bezpłatny program nauczania Apple w szkole średniej w zakresie Swift Education. To ciężka praca, ale zanim opracowali interfejs i przetestowali go z użytkownikami, uczniowie są zobowiązani do jego przejrzenia.

Umiejętności uzupełniające

Projektowanie aplikacji jest trudne. Jednak zdefiniowanie problemu i stworzenie wielu iteracji rozwiązań do przetestowania jest dobrą nauką i zadaniem dostępnym dla dzieci, nawet jeśli nie są programistami. Zaczynanie myślenia o aplikacjach z punktu widzenia projektowania może również zmotywować dzieci do uczenia się więcej o programowaniu, aby stworzyć aplikację dla siebie. Jeśli nie mają umiejętności samodzielnego kodowania aplikacji, mogą współpracować z kimś, kto ma umiejętności kodowania i szuka dobrego pomysłu. Ale nawet jeśli nigdy nie ukończą aplikacji, uczą się wartości empatii z inną osobą lub organizacją, identyfikowania potrzeby i projektowania autentycznego rozwiązania poprzez ciągłe przekazywanie informacji zwrotnych i iteracji. Ten zestaw umiejętności jest niezwykle cenny w wielu kontekstach.

Oto jeden wyraźny przykład. Rodzic w naszej szkole opracował metodę uczenia dzieci z autyzmem, jak liczyć. Nie miała jednak sposobu, by podzielić się tym pomysłem, dopóki nie połączyłem jej ze studentem w mojej klasie tworzenia aplikacji. Pracowali razem, aby stworzyć Every Value Has Its Place, popularną aplikację na iPada, która uczy wartości miejsca za pomocą koloru i wielkości. Niesamowite jest to, że ta aplikacja nigdy nie zostałaby stworzona, gdyby nie połączenie między rodzicem, który nie wiedział nic o programowaniu, a moim uczniem, który nic nie wiedział o autyzmie. Teraz każdy wie o wiele więcej.