iOsの開発の迷路における初心者の楜芳䞻矩者の道。 道路は克服されたす

画像

2010幎7月15日。 朝のお茶の間、私たちのオフィスのチヌム党員が、iPadのAtomic Antelopeのむンタラクティブな本「䞍思議の囜のアリス」を熱心に調べたした。



そのようなアプリケヌションを䜜成するずいうアむデアは私たちに倧きな圱響を䞎え、翌日、同僚ず私は䞀緒に座っお、蚈画を実斜するために必芁なものを倧たかに想像したした。







私たちはすでに職堎ず自宅で技術的な基盀を持っおいたした-Appleの機噚が利甚可胜でした。



アクティビティの性質䞊、アプリケヌション開発ずわずかな関係しかなかったため、本を䜜成するプロセス党䜓が非垞に曖昧だったずすぐに蚀わなければなりたせん。



さお、1幎埌、すでに新しい本に取り組んでいるずき、すぐに次の項目をリストに远加したす。



そのようなこずの実珟は経隓によっおのみもたらされ、2人の玠朎な愛奜家は明るい楜芳䞻矩ず矎しく興味深いものを䜜りたいずいう欲求に満ちおいたした。



リストの最初の2぀のポゞションを非垞に簡単に把握したした。子䟛の䜜家であるEkaterina Okovitayaが私たちの良き友人でした。 圌女はすでに圌女の成功した子䟛向けの本をいく぀か出版しおおり、圌女自身がそれを説明しおいたす。 圌女は私たちのアむデアが本圓に奜きで、テキストず写真の仕事を始めたした。 私たちは圌女に䜜品の党䜓的なグラフィックず文孊の郚分を蚗したした。 時々圌らは集たっお、いく぀かの物議を醞す問題に぀いお議論したした。



画像



3人の玠朎で勀勉な愛奜家がいたした。



この段階で、私たちも少し間違っおいたこずは明らかです。創造的な瞬間をすべお1人に任せる䟡倀はありたせんでした。集合的な心が、より興味深い最適な゜リュヌションを芋぀けるこずができるからです特にアニメヌションずむンタラクティブ性。 ドラフトは、もちろん誰もが行うのが最適です。 そしお、もっず楜しくお生産的です。 そしお、すでにテキストのアりトラむンずむラストのスケッチの準備ができおおり、アニメヌションが倧たかに考え出されるず、誰もが䜜品の自分の郚分を完成させるこずができたす。



プログラマヌにずっおはより困難でした。 私たちには銎染みのあるプログラマヌがいたしたが、党員がiOSに完党になじみがなく、䞀般に開発が蚈画されおいるデバむスのクラスに぀いおはほずんど知りたせんでした。 しかし、私たちは友人や、私たちにいくらかの料金で手䌝っおくれる人を捜すこずに決めたした。



プログラマヌの怜玢ず䞊行しお、知人ず翻蚳者の間で怜玢したした。圓初、この本を英語ずスペむン語に翻蚳する予定でした。 翻蚳の䞻な難点は、児童文孊が翻蚳に特定の芁件を課しおいるこずです。ロシア語のドラむトレヌシングペヌパヌであっおはならず、意図する囜の子䟛に適合させるべきです。



プロゞェクトの終わりは、新幎を迎えるために12月に蚈画されたした。 3人の愛奜家の玠朎さには限界がありたせんでした。



コンセプト開発


私たちはすぐにむラストのスタむルを決定したした。玄35ペヌゞを蚈画したしたが、そのうち7〜10ペヌゞのみがアニメヌション化され、残りは静止したむラストのテキストのみであるず想定されおいたした。 たた、子䟛たちがもっず楜しく読むこずができるように、いく぀かの簡単なミニゲヌムを远加するこずにしたした。 この本では、ペヌゞの垂盎方向を優先したしたしたがっお、電子曞籍は埓来の玙のペヌゞのようでした。アニメヌションは、特定のペヌゞで説明されおいるオブゞェクトをスむング、移動、ドロップできるように、それほど難しくないず刀断したした。



画像



それから、これで倧きな困難が生じおはならないように思われたした。 背景ずテキストを含む静的な画像、およびクリックに応答する別のオブゞェクトを衚瀺したす。耇雑なものはありたせん。 はい、ペヌゞめくり手順を蚘述したす。 そしおすべお-このコヌドを35回繰り返し続けるず、本の準備が敎いたす。



pdf圢匏のペヌゞのいく぀かの倧たかなドラフトから、プログラマが本を組み立おるこずができる技術的なタスクがコンパむルされたした。



適切な人を探すのず䞊行しお、iOSデバむス甚のプログラムがどのように曞かれおいるかに぀いおの䞀般的な考えを埗るために、自分でObjective-Cを孊ぶこずにしたした。 Objective-Cのチュヌトリアルのラむブラリ党䜓をアップロヌドし、hello worldのような簡単な䟋を䜜成し始めたした。 はい、はい 笑わないで 11幎前、デルファむずタヌボパスカル以倖、倧孊には䜕もありたせんでした。たた、シシュ語に぀いおは党く知りたせんでした。 もちろん、コヌドの䟋は怜玢゚ンゞンで怜玢されたした。 䞻な発芋は、キヌワヌド「ペヌゞめくり遷移iOS Objective-c」にありたした。 Googleはcocos2dフォヌラムペヌゞにアクセスしたした。これはXcodeのアドオンで、グラフィックずアニメヌションスプラむトを操䜜するずきに非垞に困難な䜜業でした。



アメリカを発芋するこずはできたせんが、cocos2dは私たちを救っただけです 圌には、膚倧な数の䟋ずビデオチュヌトリアルがあり、圌は圌の助けを借りおあらゆる皮類の興味深いささいなこずを曞く方法を指で説明したした。 そのため、私たちにむンスピレヌションを䞎えたアリスは、シマリスず呌ばれる物理゚ンゞンを䜿甚しお、cocos2dでも組み立おられたした。



私が䌑暇に行く前に、私たちは自分自身で幎間口座を賌入したした

開発者ず実際のiOS開発者のように感じた。 9月でした。 私たちは実際に開発を開始するこずさえしたせんでした。



最初の問題ずその解決策


プログラマヌの怜玢はたすたすがっかりしたした。 私たちが専門家に倚くのお金を払うこずができなかったこずは明らかであり、私たちの友人はどういうわけか新しいプログラミング領域を習埗する熱意で燃えなかった。 それにもかかわらず、ある知人は私たちにささやかな報酬を手䌝うこずに同意したしたが、圌はめったに働きたせんでしたので、圌は非垞にゆっくりず進歩したした。



ある倕方、プログラマヌから家に垰っお、私自身がむベントを匷制しなければ、問題は無期限に匕きずられるず決めたした。 圌はcocos2dのマニュアルのあるサむトを開き、ほずんどの初心者向けのレッスンを䞀貫しお受け枡し始めたした。 ちょうど手順-lesson1-lesson2-lesson3 ...



その倜、スプラむトを読み蟌んでペヌゞをめくる方法を孊びたした。 ドラフトペヌゞがすでにあるので、翌朝、3ペヌゞの本のプロトタむプがありたした。これは、背景がテキストであり、スプラむトが移動するものでしたが、抌しおも加速床蚈でも反応したせんでした。 しかし、私たちにずっおそれは本圓に画期的な出来事でした。 それはすでに秋䞭旬に起こりたした。 10月頃。 はい、䜜業の開始時に私たちはひどく滑りたした。



埐々に、キャサリンは本党䜓のレむアりト案を収集したした。



画像



スプレッド党䜓のむラスト付きの数ペヌゞを元のプロゞェクトに远加したした。これで、本栌的なプロトタむプアプリケヌションを組み立おるこずができたした。 そしお、ペヌゞを䞋曞きで公正な図面に眮き換え、アニメヌションを䜜成したす。 本の完党なプロトタむプは11月に準備ができおいたした。 この時点で、䜜業プロセスはすでに確立されおおり、次のように芋えおいたした。週に1回、カティアから新しいむラストを受け取りたした。圌女のアニメヌションを思い぀いた共同の粟神の助けを借りお、次の絵が描かれおいる間に、すべおの蚈画を実珟したした。



完成したむラストを個別のスプラむトに切り分け、Xcodeでタむプセットし、新しいペヌゞをプログラミングするずきに生じた耇雑な質問ぞの回答を求めおむンタヌネットを苊しめたした。 答えがなければ、私は䜿い慣れたプログラマヌに目を向け、䞀緒に䜕ができるかを考えたした。



アニメヌションプログラミング゜リュヌションを探しお、初心者向けの優れたレッスンを備えた優れたサむトが芋぀かりたした。 ほが「第1孊期、第2四半期の教科曞」。 より若いプログラミング時代のために。」 誰もが興味を持っおいる堎合は、リンクを提䟛したす。 cocos2dの電子曞籍もいく぀か賌入したした。 そしお、ほが毎晩、質問ぞの回答を求めおフォヌラムで時間を過ごしたした。



この段階で、䜜業は倚少なりずも改善され、週に1ペヌゞ皋床䜜業を始めたした。 それほど速くはありたせんが、半幎前にプログラミングやむンタラクティブな曞籍に぀いおたったく考えおいなかった人たちにずっおは、たったく悪いこずではありたせん。



食欲は食事に䌎う


プログラミングは非垞に興味深いものになり新しいむラストを受け取るたでに時間がかかりたした、埐々にすべおのペヌゞにアニメヌションを远加し始め、元の蚈画から遠ざかりたした。 倚くの堎合、これにより、オブゞェクトの䞀郚を再描画たたは完党に再描画する必芁があり、その結果、本の䜜業に費やす時間が増加したした。 しかし、もうやめられたせんでした。



技術的にobjective-cの知識䞍足のため、たたは自由時間の䞍足のために実珟できなかったこずを、曎新たたは以䞋の本でこれらのアむデアを実装するためにりィッシュリストに曞き留めたした。 珟圚、月に玄1回、曞籍の曎新をリリヌスし、アニメヌションを改善および耇雑化しおいたす。



物理゚ンゞンに基づいた矎しく興味深いアニメヌションを远加したかったのです。 私はhipmunk゚ンゞンを孊がうずしたしたが、盞乗効果であるこずが刀明し、objective-cず䞊行しおCを研究するこずはすでに私の力を超えおいたした。 ある時点で、状況はspace managerのレッスンによっお保存されたした-cocos2dのアドオンで、objective-cにシマリスチップを曞き蟌むこずができたす。 同様の方法でいく぀かの簡単なこずを実装できたした。 しかし、私たちはプロのプログラマヌずの協力ずいう考えを捚おたせんでした。 単独で行う耇雑なこずは絶察に非合理的です。 専門家は、このようなタスクにはるかに迅速か぀正確に察凊したす。 そしお今、新しい本に取り組んでいる間、私たちはチヌム内でプログラマを探し続けおいたす。



怖いバグ


画像



開発の過皋で、プログラムでひどいバグが発芋されたした。

取り陀くこずができたせんでした。 箄10〜15ペヌゞをめくるず、アプリケヌションがクラッシュしたした。 メモリオヌバヌフロヌにはいく぀かの問題がありたしたが、䜕が問題なのかわかりたせんでした。 iOSの開発経隓が十分ではありたせん。



締め切りは最初に2月䞭旬に、次に3月に移動したした...その結果、私たち自身の䌑暇やその他の問題を考慮しお、いく぀かの高品質な集団かんしゃくの埌、4月15日に最終リリヌス日を蚭定したした。



予期せず突然救いが来た


Habréに着いたずき、私たちは、少し前たでは玠朎な愛奜家でしたが、サンクトペテルブルクでiOS開発者向けのADCSpb䌚議の発衚を発芋したした。 提瀺されたレポヌトの䞭には、cocos2dでゲヌムを曞くこずに関するレポヌトがありたした。 圓然、このようなむベントを芋逃すこずはできたせんでした。 私たちは、本の出発に䌎い、どうにかしおバグの問題を解決する必芁がありたした。



䌚議は私たちにずっおただの救いであるこずが刀明したした。私たちは、興味のあるトピックの報告者であるスタニスラフ・クラスノダロフに䌚いたした。 そしお圌は私たちを助けるこずに同意したした 箄1週間埌、私たちはカフェで䌚い、数時間で圌は私たちの問題の解決策を芋぀けたした。 経隓を共有したいず思っおいる人がいるのはずおも玠晎らしいこずです



この瞬間から、私たちはすべおのサンクトペテルブルクの䌚議に出垭し始めたした

iOS開発者。 経隓が少ないため、䞀郚のレポヌトのトピックは必ずしも明確ではありたせんが、各䌚議で自分にずっお必芁で興味深いものを芋぀けたす。



リリヌスが来おいたす...そしお来おいたす...


2月末から、本に぀いおの私たちのアむデアが客芳的で正気な人々の印象にどのように察応するかを決定するために、友人や知人にテスト甚の本を提䟛し始めたした。



iPadずプラットフォヌムの機胜に䞍慣れなほずんどの人は、非垞に䞀様に考えおいるため、むンタラクティブアニメヌションの䞀郚がスキップされるこずが刀明したした。 ヒントを远加するか、䞀郚のペヌゞで元のアニメヌションを倉曎する必芁がありたした。



モヌニングティヌの埌に生たれたむンタヌフェむスずアニメヌションを修正したベヌタテスタヌからのアむデアの流れは、蚘録に適した即興のツヌルに保存されたした。



画像



通垞、このような各テストの埌、少なくずも10〜15の修正が珟れたした。 数日間、私は本を修正したした。 その埌、我々は再び準拠した犠牲者を芋぀け、新しいテストの埌、10-15の修正が再び珟れたした。 このグラりンドホッグの日は氞遠に続くように思えたした。 しかし、3月䞭旬たでに、修正の数は埐々に枛少し始め、本はほが完成した倖芳になりたした。



ああ 埗点を忘れたした


私がただ觊れおいないむンタラクティブな本のもう䞀぀の重芁な芁玠は、声の挔技です 本のために、あなたはメニュヌのメロディヌを必芁ずし、

いく぀かのペヌゞ、ヒヌロヌの発声、ペヌゞめくりのざわめき...䜕をする 䜜曲家は私たちに非垞に高䟡な費甚をかけおいたしたが、どうにかしお生じた次の問題を解決する必芁がありたした。 私たちは運呜的にため息を぀き、袖をたくり、仕事を始めたした。



刀明したように、ネむティブのApple゜フトりェアにより、アプリケヌションのサりンドトラックを実質的にひざたずかせるこずができたす。 もちろん、私たちが録音したものはプロの䜜曲家の䜜品ずはほど遠いこずを理解しおいたすが、圓時は他に遞択肢がありたせんでした。



プログラミングの段階で、私は自分のMacBook Proに内蔵されたマむクに自分でいく぀かの音を録音したした。 SoundtrackProを少し改良した埌、かなり良い音になりたした。必芁なすべおのオヌディオ゚フェクトを十分に防音された郚屋で録音すれば、ダビングを自分で凊理できるず刀断したした。



自分の小さな友達ずアレンゞする

レコヌディングスタゞオ、3月の土曜日の1日、私たちはwe屈な郚屋に集たり、非人間的な音を出すために合唱を始めたした。



結局のずころ、倚くのオブゞェクトは、映画やゲヌムでよく耳にするように聞こえたせん。 たずえば、キヌリンギングを実際のキヌを䜿甚しお蚘録するこずは非垞に困難です。 圌らはちょうど正しく聞こえたせん 倢の工堎は䞀般の芖聎者の耳を完党に台無しにしたした。 同じこずは、ドアをバタンず閉める音、足の螏み぀け、䞍気味な悲鳎にも圓おはたりたす。



その埌、サりンド゚ディタで䜕かを修正し、䜕かを曞いお、その堎でサりンドを歪たせなければなりたせんでした。 たずえば、笑い声は

テレビ、携垯電話から曞きたした。 圌らは声がこれらの目的に非垞に適しおいる友人に電話をかけ、圌女は私たちの電話に笑った。 玠晎らしいMakovskyプログラムGarage Bandのメニュヌずいく぀かのペヌゞのメロディを集めたした。 iPad甚のガレヌゞバンドのバヌゞョンにも䜕か曞いおありたす。 もちろん、将来的にはプロの䜜曲家に目を向けるこずを蚈画しおいたすが、この段階ではうたくやっおいたす。 悪くないようです。



そしお、ここにリリヌスがありたす


だから... 2011幎4月。本のロシア語版の䜜業を完了し、23日にリリヌスするためにApp Storeに送った。 送信プロセスには6時間以䞊かかりたした あらゆる皮類の小さな問題の倚くが干枉し、その解決策はさたざたなフォヌラムで長い間求められおいたした。 倕方遅く、ようやく、Appleにアプリケヌションを送信するこずができたした。



画像



箄1週間埌、アプリケヌションがApple Human Interface Guidelinesの高い基準を満たさなかったため、回答たたは华䞋を受け取りたした...しかし、最悪の理由ではなく、デバむスの䜍眮に応じお画面の向きを倉曎するこずを䞀床オフにしたした他の倚くの曞籍でずころで、これも行われたす。 Appleず議論したくはありたせんでしたが、できるだけ早くApp Storeで私の本を芋たいず思いたした。 そのため、オリ゚ンテヌションの倉曎を返し、アプリケヌションをもう䞀床送信したした。 埅機はさらに1週間続きたした。 痛々しいほど長い...そしお最埌に、5月10日、私たちはApp Storeにいたした 数日埌、圌らは5月19日に承認された英語版を送りたした。



リリヌスが行われたした、次は䜕ですか


この瞬間から、「アプリケヌションのプロモヌション」ずいう次のク゚ストを開始したした。 でも、次回はこのこずに぀いお話したす。



䞊蚘を芁玄するず、私たち䞀人䞀人がこのようなものを単独で収集しようずした堎合、99の確率でプロゞェクトを完了できなかったこずに泚意しおください。 䜕かがうたくいかなかったために䜜業の途䞭で誰かがeverめた、誰かが予想倖の䜜業の増え続ける量に恐怖を感じ、時には䜕かをするのが面倒すぎお、誰かがプッシュする必芁があった働くか、ただ奚励されおいたす。 チヌムワヌクにより、これらすべおの困難や問題を簡単に克服できたした。 たた、本の特定の芁玠にさたざたな芖点が存圚するこずは、垞に最適な解決策を芋぀けたり、私たち䞀人䞀人に芋えない゚ラヌを回避するのに圹立ちたした。



アプリケヌション開発の経隓がなかった私たちがプロゞェクトを開始し、そしお最も重芁なこずずしおプロゞェクトを終わらせるこずができたずいう事実は、すでに私たちにずっお倧きな成果です。 そしお、肯定的な顧客レビュヌは最高の報酬です。 そしお、なぜこの蚘事を曞いたのですか アむデアを持っおいる人が圌らの実斜を恐れるこずがないこずを保蚌するために、圌らは可胜な困難の前に怖がっおいたす。 自己実珟したアむデアは、道埳的な満足感を䞎え、自分の胜力に少し自信を䞎えたす。 私たちず䞀緒にそしおあなたず力を合わせおください



All Articles