スマホアプリを開発するために未経験者がプログラミングを学習する場合、まずは市販のテキストを読んでみるという人もいるはずです。しかし、JavaScriptのような特別な環境を必要としないプログラミング言語は別ですが、多くのプログラミング言語には開発環境が必要になります。それが面倒でPCの開発環境を整える前に、座学でプログラミングのイロハを学ぶなど頭で理解しようとする人も少なくないでしょう。
しかし、プログラミングは書いて動かすことが一番効率的な上達法であり、プログラミング初心者にとって最も効率的な勉強法だといえます。特にスマートフォンなどのアプリの開発をするために必要なJavaなどのプログラミング言語は、実際の試行錯誤が必要です。市販のテキストのサンプルなどをまずは書いてみて、5周ぐらい繰り返し開発すると良いと言えます。何周かテキストの内容を回すうちに、基礎力だけではなく応用力も身に付き、自分なりのアレンジを行えるようになっていくでしょう。そこが座学と比較した、コードを実際書くという勉強法の優越性です。
一方で、どうしても座学で学びたい場合、基本情報技術者試験の午後試験のプログラミング分野の過去問を解く方法は一定の効果があります。資格を取得すると転職や独立する際に実力をアピールできるのも魅力です。しかし、基本情報技術者試験の出題は実際のプログラミングとはやや乖離しているため、効率的に実践的なスキルを磨きたいのであれば、ゆくゆく取得することを目指し、今はまだ参考程度に留めるのがおすすめです。