ראיונות עם המפתחים אקסליבריס
Makradar של טכנולוגיה / / December 19, 2019
אקס ליבריס - אקס ליבריס עם השם או הלוגו של הבעלים של הספר ומידע על הרכב בספרייתו. שם כה מעניין היישום שלה נתן את צוות הצעיר של מפתחים מ רוסטוב על דון. תכנית אקסליבריס הוא קורא ספרים בפורמט EPUB להעלות יצירות פונקציה באמצעות iTunes, באמצעות דואר אלקטרוני או דרך-brazuer האינטרנט ספארי.
הבקשה כוללת את הספרייה שבה לרשות הציבור הן יצירות קלאסיות של הספרות הרוסית והבינלאומית. קריאת האזור מצויד סימניות והערות, הערות שוליות, תוכן עניינים כדי לנווט בתפריט. הפוך קריא תוכנן נוח להתאים בהירות, צבעים, סט גופן וכיוון דף שינוי בהתאם למיקום של המכשיר.
אתמול ב AppStore אקסליבריס גרסה חדש. יחד עם התיקונים קצת, את האפשרות של השבת טקסט מוחלקים אפשרות הקורא מושרשת והמיקוף עבור שפות רוסית ואנגלית. ניצול של הזדמנות זו, החלטנו לשאול כמה שאלות כדי יוצרי אקסליבריס מיכאיל Lyubimov ואת אלכסיי Grebenets.
מיכאל, אלכס, מה מביא אותך פלטפורמת Mac, אשר מוצרי אפל אתם משתמשים בחיי היומיום ובעבודה?
מיכאל:
ב- Mac OS, באתי מצועצע למדי עבור מתכנת ידי. בתחילה, הכלים שלי היו Windows ואת פלטפורמת .NET, אז Perl ו- Linux. לפני שנים, הבמאי של החברה שלנו "נקודת רתיחה" הציע לי לנסות לכתוב יישומים עבור הפלטפורמה החדשה בבית iPhoneOS הזמן. כמובן שאני לא מוותר :). מאז, דברים מעניינים יותר לא יכולתי למצוא את הכיוון. כמו מכונות העבודה והבית להשתמש MacBook, וזה מספיק עבור הצרכים שלי. מהתקנים ניידים - אולי המגוון השלם של iPhone ו- iPad Wi-Fi.
אלכס:
יש לי בנושא הזה אין מה לומר. התחלתי לפתח יותר ממקריות =)
כאשר האייפד היה בידיים שלי, התרשמתי ביותר יש שלושה יישומים: מזג HD, אליס של iBooks כמובן. מה הן התוכניות המעניינות ביותר מתוכם האייפד יכול "פעימה" כל מכשיר מסוג זה, אותו Galaxy Tab מבית סמסונג?
מיכאל:
למרות שאני לא יודע איך לנגן על כלי נגינה, האפליקציה iPad הראשון שהרשים אותי היה פסנתר Magic - יישום מעניין מאוד של הפסנתר, מלא לחשוף את היכולות multitouch מכשיר. משחקים - הוא לעומת ציפורים וצמחי כועס זומבים. אשר להשוואת ג iPad לגודל של מכשירים דומים אחרים, אני חושב שזה לא ממש נכון. כל המכשירים האלה יש נישה משלה בשוק.
אלכס:
קשה באמת לדבר על זה בלי לדמיין נראה כמו Galaxy Tab. באופן כללי, השפעה חזקה רק על העובדה שזה "balshoy iPhone."
איך נולד הרעיון של פיתוח יישומים עבור AppStore? מהו תפקידך הפרויקט שהיה מעורב בה חוץ ממך?
מיכאל:
בהתחשב בכך בפרויקט רק שנינו, (ואפילו שני מתכנתים) אין חלוקת תפקידים נוקשה. ישנן משימות פרופיל בשבילי, הוא עבור אלכסיס. כל העבודה בצד השרת של מתכנתי האינטרנט עשה יישום "נקודת רתיחה." עם עיצוב עזר לנו רומי מרטירוסיאן, אשר רבים בזכותו! הרעיון ליישום שם אקסליבריס בא רק ממנו.
האם יש לך בקשות נוספות בנוסף אקסליבריס, כבר שוחרר עבור התקנים ניידים?
מיכאל:
מבין כבר הוציא את רוב הנכבד הייתה האפליקציה הראשונה שלי iProbkiאשר במשך זמן ארוך כל זמן ב AppStore App רוסית וסדרה של יישומי פרויקט ספרותיים "Ethnogenesis" את הגרסה האחרונה של אשר אנו כבר הפיק, יחד עם אלכסיי.
איך זה היה קשה להתחיל עם Objective C? איזה בעיות נתקלות במהלך שלב הפיתוח?
מיכאל:
בעיות מיוחדות כאשר נפגשו עם Objective C לא היו. השפה היא די פשוט לדעת את יסודות C והבנה של עקרונות OOP. קשיים מופיעים כאשר פגרת במסגרות פועל במסגרת ה- iPhone SDK. כפי שזה קורה בדרך כלל 80% מהפרויקט מתבצעים 20% מהזמן. בשאר הזמן - המלחמה עבור אופטימיזציה קוד ובקרה של באגים מרכיב כפופים. קשיים מסוימים עשויים גם להיקרא לתמוך הן פלטפורמות iPhone ו- iPad, בפרט המכשירים החלשים - iPhone 3G.
אלכס:
השפה מאוד Objective-C היא פשוטה מאוד בהשוואה ל- C ו- C ++. כל המידע הנוגע להבדלים בין C ו- Objective-C מושם לתוך דף wiki, שבה אתה אפילו לא צריך להיות מוכר עם C, שכן רוב התכונות של C, אתה לא יכול להשתמש בכלל. Objective-C אין בעיות כאלה עם ניהול זיכרון ב C ואין קשיים עם תבניות ב- C ++. באופן כללי היא שפה מודרנית טובה, שבו אתה יכול לשים בבטחה על שוה עם שפות כמו Java או C #.
ישנם גם כמה קשיים, הוא בעיקר מתייחסים בספרייה הרגילה. זהו תיעוד מספיק רע (למשל, כמה פונקציות יכולות רק לחזור קוד שגיאה, בלי לספר שום דבר על הסיבה שלה, ואת התיאור של שגיאה כזו הוא לעתים קרובות לא אי אפשר למצוא בשום תיעוד, ואפילו לא ב- Google), לעתים קרובות שמות השיטה הלא ברור (למשל, כדי למצוא את המופע של מחרוזת במחרוזת, תצטרך שיטת rangeOfString השימוש:, למרות השם מכיל את המילה למצוא יהיה רגילות), קושי שינוי התנהגות ברירת המחדל של רכיבים מסוימים (חלק דברים שנראים כאילו הם עשו רק לספק הרבה כאבי ראש - כמו הרבה מאמץ אתה מבלה אם אתה מנסה לחתוך סביב UITextView הרכיב מסגרת).
איך נולד הרעיון ליצור קורא די מלא נישה ב AppStore? האם אפשר להרוויח מיישום מסוג זה או זה רק מדגם של כוחות ויכולות משלו?
מיכאל:
כאשר התברר כי האבולוציה של חדר הקריאה עבור Ethnogenesis נחה בפורמט המקורי של הספר, התחלתי לבחירה כבר זמין הפורמטים הנפוצים ביותר. כל אחד מהם היו חסרונות ומגבלות שלה, ולכן יש לבחור EPUB, הכי פתוח ורב עוצמה, לדעתנו, מבחינת עיצוב ותכונות של הספר.
קוראים ב AppStore הוא בעצם לא כל כך הרבה. ובכל אצבעות מספיק באמת כללית באיכות הגבוהה של יד אחת. החלטנו לנסות למלא את רשימת היישומים שלך. כמובן בנוסף לגרסה חופשי בחדר הקריאה, אנו מעוניינים הנושא ולשלם (או עם תוכן בתשלום) יישומים המבוססים על מנוע הוקמה. לשם כך, אנו מחפשים שותפים שרוצים למכור את התוכן שלהם (ספרים, מגזינים, או כל פורמט דומה לפרסום).
אלכס:
הרעיון מאז ומתמיד. הקורא הראשון יושם ביישום "Maroussia" לקרוא מחולק קבצי טקסט רגילים ורק מסוגל להזיז את העניינים (וזה היה הרבה לפני iBooks). בהדרגה, הקורא הזה השתפר, עד שיום אחד הוחלט לנסות ללכת על epub תצוגה. ניסינו את זה.
הכנסות מיישום זה כמובן אפשרי, עד כמה מנוע דרוש לקריאת ספרים. Reader - זה פשוט הזדמנות לשבור במנוע ולהכין אותו להשתלבות יישומים אחרים.
לכן הקורא אינו כרוך בתשלום. זוהי רק באתר מבחן =)
יישומים של מפתחים אחרים למדו ארוך וקשה. הסתכלנו פונקציות אלה, אשר היו בכל אחד מהם (חרוזה, אמזון, Booq, iBooks, קובו, freebooks, i2reader ואחרים), הביט הממשקים וסקירות. מבחינות מסוימות אקסליבריס - הוא אוסף של כל שימושי ביותר של דואר קוראים אחרים =)
על מה היה להתמקד ביצירת אקסליבריס?
מיכאל:
המוקד העיקרי, כמובן, מתמקד שימושיות יישום, יציבות מקסימלית נתמכת בפורמט. עכשיו, כשהיא היא הגרסה השנייה של היישום, אנחנו תמיד מתייחסים לכל שמגיעים אלינו דיווחים על בעיות ביקורות יישום משתמש. הגרסה החדשה תוכל לכתוב לנו משוב מתוך האפליקציה, ולשלוח את הספר, אשר, לדעתו של הקורא יש בעיות בהצגה ב אקסליבריס. לפיכך, אנו מתכננים לשפר את המוצר מבוסס על חוות דעת משתמשים. וכמובן בתוכניות המיידיות ביותר בצפיפות לעשות את העיצוב והשימושיות של הממשק.
אלכס:
היו 3 בעיות מרכזיות - ניתוח epub'a (הקשיים העיקריים הקשורים בניתוח CSS), תצוגה של טקסט על מטוס (כאן את המורכבות הקשורה להתמוטטות של האלמנטים בדף) וזיכרון. לזכרו של היישום אינו תמיד מספיק, וזה האט נורא לאורך תהליך הפיתוח.
עם הניתוח המסובך של epub'a - העובדה כי המבנה של קובץ ePub הסטנדרטי וככזה אינו קיימת. יש, כמו רוב לעשות, אבל בכל זאת, לעיתים קרובות אתה יכול למצוא ספרים שבהם סגנונות CSS אינם בקובץ נפרד ונוסף הכותרת של כל דפי XHTML, או ספרים שאין להם שולחן של קובץ תוכן בכלל, או ספר שבו כל הטקסט (גדול מאוד!) תחוב קובץ אחד.
לכן קיומו פשרה, הקמת רשימת המקרים כאשר הקורא פשוט לא לפתוח את הספרים. וכמובן שהיו לנו בעיות עם ניתוח CSS - תומך בכל CSS סטנדרטי - מדובר במשימה קשה מאוד, היה צורך לבחור תת קבוצה קטנה בלבד של סגנונות.
הצגת טקסט על המטוס גם לקשיים. העובדה היא כי הספרייה רק עבור ציור טקסט CoreText הראשון, די עגלה, וגם, ושנית, הוא אינו מאפשר הרבה דברים דרושים (למשל, אינו מאפשר את הכניסה שהותירה תקין קצה). לכן, על אף העובדה כי כתוצאה CoreText היוותה את הבסיס של היישום, אז רב של הפונקציות שלה הוחלף יציבה שלהם יותר האריך פונקציונלי.
בעיות עם חוסר הזיכרון כנראה החלו עוד לפני ההדלקה הראשונה (או לייתר דיוק בטווח הראשון במכשיר נכשלה דווקא בגלל חוסר הזיכרון). במיוחד דברים נוראים על iPhone 3G. אי אפשר לשמור בזיכרון מחולק דפי הספר כולו (הכל נזרק אבל בפרק הנוכחי), אי אפשר לשמור בזיכרון את הטקסט של פרקים (כלומר קשה יותר כדי לחפש). אנחנו צריכים לשמור על הכל. על טקסטורות על מידע טקסט על בקרי עזר.
בשלב זה, הוא עם בעיות זיכרון הן הכי חשובות.
איך 3D אפקט לדפדוף יושם?
אלכס:
מבחינה טכנית, זה באמת אפקט 3D מיושם באמצעות OpenGL. עם זאת, אם אתה מסתכל מקרוב, תבין שאין = 3D) למעשה, הדף פשוט כפוף כך ...
מיכאל:
מעניין, רוב אלה שמנסים ליישם אפקט דומה ב OpenGL מתחילים ליישם אותה "3D מלא». הלכנו לכיוון השני עשינו בלעדיו. אם במבט הראשון נראה טבעי כדי לקבל את האפקט, השגנו את המשימה ולא לקלקל את הסבר הקסם עבור היישום הטכני שלה :)
האם יש תוכניות נוספות עבור שוק AppStore, יש כבר רעיונות הכיבוש שלו? :)
מיכאל:
תוכניות בהחלט. בעיקר, זה בנוסף הקורא שלנו ספריית מעניין של ספרים ופרסומים מלאים לחשוף את הפוטנציאל שלה. יש גם כמעט יישום מוגמר עבור תחנות שירות חדשות הערכת Geosocial. זה מתוכנן בעתיד הקרוב.
אלכס:
תוכניות להשלים. חבל כי היום רק 24 שעות.
תודה מיכאל ואלכס עבור תשובות מעניינות מאוד אינפורמטיבי לשאלותינו. אנו מאחלים להם מזל טוב ורעיונות חדשים!
דף יישום אקסליבריס עבור iPad ו- iPhone (חינם)
בית פרויקט אקסליבריס.