שאלה | מה רע בפייתון
-
@ENM כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
יש כאן אי הבנה, אתה בכלל לא חייב לא להשתמש בgradle או בjvm כדי להשתמש בקוטלין,
אני יודע, פשוט התייחסתי ל gradle ו jvm, כי אתה התייחסת ליתרונות שהם נותנים לך
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
זה נראה ששאלת את gpt
מה שנכון נכון
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לא חייבים בכלל להשתמש בטייפ סטטי שהעובדים עם json וכו',
באמת לא שמעתי על טייפים דינמיים בקוטלין, אז תודה שחידשת לי
אז עשיתי גוגל והגעתי לדף הזה: https://kotlinlang.org/docs/dynamic-type.html
(בהנחה שהבנתי נכון את מה שכתוב שם)
זה נראה כאילו לכתוב משתנה בלי טייפ בכלל
זה דרך מאוד נחמדת לעקוף את ה"בעיה" (לניתוח נתונים ai וכו, סטטי זו בעיה) שקוטלין היא שפה סטטית, אבל אז אין לך בכלל טייפים
בפייתון יש טייפים, רק שהם דינמייםאוקיי, בזכות הטעות שלך, אני מתחיל להבין את הבעייה שאוליי בגללה קוטלין לא פופולרית, כי מה שהבאת זה נכון רק לקוטלין JS ולא לשאר פלטפורמות. קוטלין היא טייפ סטיטי, אבל יש 2 דברים :
א) לא חייבים להצהיר מה הטייפ, הקומפילר יזהה את זה אוטומטי, למשל :var age = 15 var newAge = age + "5"
זה לא יעבוד כי הוא זיהה שage זה INT
הדבר השני זה כשמעבדים נתונים, אפשר או להצהיר מראש איזה סוג של נתונים שאתה הולך לקבל או להשתמש באובייקטים דינמים, למשל אם יש לי JSON כזה (בשביל הדוגמא אני אשמתש בספרייה רשמית של קוטלין kotlinx serialization):
{ "name": "David", "age": 35, "details": { "city": "Tel Aviv", "country": "Israel" } }
אפשר בטייפ סטיטי בצורה הזאת :
@Serializable data class Details( val city: String, val country: String ) @Serializable data class Person( val name: String, val age: Int, val details: Details ) fun main() { val jsonString = """{"name": "David", "age": 35, "details": {"city": "Tel Aviv", "country": "Israel"}}""" val person = Json.decodeFromString<Person>(jsonString) println("Name: ${person.name}, Age: ${person.age}, City: ${person.details.city}, Country: ${person.details.country}") }
או בטייפ דינמי :
fun main() { val jsonString = """{"name": "David", "age": 35, "details": {"city": "Tel Aviv", "country": "Israel"}}""" val jsonElement = Json.parseToJsonElement(jsonString) if (jsonElement is JsonObject) { val name = jsonElement["name"]?.jsonPrimitive?.contentOrNull val age = jsonElement["age"]?.jsonPrimitive?.intOrNull val city = jsonElement["details"]?.jsonObject?.get("city")?.jsonPrimitive?.contentOrNull val country = jsonElement["details"]?.jsonObject?.get("country")?.jsonPrimitive?.contentOrNull println("Name: $name, Age: $age, City: $city, Country: $country") } }
אבל כדי לחזור לטעות שלך, המטרה של JETBRAINS היא לעשות שפה שהיא תעשה הכל בצורה מושלמת, כלומר שאף פעם קוטלין ישתמש בBRIDGE בין הפלטפורמה למה שהשפה עושה, אלא רק בBINDING, כלומר ששימוש של ספרייה נטיבית הוא לגמרי שונה בין קוטליו JVM לקוטלין נטיבי, וכנראה שזה מבלבל כי יש עולם בין קוטלין סקריפט, קוטלין JS, קוטלין JVM וקוטלין נטיבי ואף לדעתי סקריפט קוטלין לא פחות מפייתון, אנשים שירצו לכתוב סקריפט בקוטלין כנראה לא יבינו כלום מרוב הדברים שניתן לעשות עם קוטלין, ומרוב הידע שצריך לפני כדי להבין את הDOC ואלו שמשתמשים בפייתון לא מתכנתים אלא מדעים ורוצים משהו שלא מצריך שנתיים או יותר של לימוד של השפה עם הכלים שלה, ובפרט שמי שלא מבין בJS לא יבין את קוטלין JS, מי שלא מבין בC לא יבין כלום בקוטלין נטיבי.
ולכן כנראה שמרוב החשק של JETBRAINS של להחליף את כל שפות של רמה גבוהה לשפה אחת מושלמת, אבדו הרבה אנשים על הדרך, אבל אני עדיין נשאר בשלי שבכל זאת כדאי לעשות את העבודה הזאת
אבל זה נכון שאני לא כותב סקריפטים כמעט חחח.
-
@לא-מתייאש
אתה צודק, טעיתי בנוגע להבנה מה זה התיעוד שם
דיברת על טייפים דינמיים בקוטלין, אז עשיתי גוגל "kotlin dynamic types", אבל על פי הדוגמאות שנתת נראה שהעיקרון דומההדוגמה שנתת על פיענוח json היא דוגמה טובה למה שפה סטטית קשה לנתונים
יש את האופציה של טייפ סטטי, שאין צורך להתייחס, זה די מעצבן על כל json שיש לי לכתוב data classוהאופציה של ה"דינמי" היא לא באמת דינמית, כי אחרי שהמרת את ה json ל jsonElement
צריך לכל נתון לדעת איזה טייפ הוא ולהמיר ידנית לטייפ המתאים
(ומה קורה אם השרת שלך מחזיר לפעמים json כזה ולפעמים אחר? כמובן, בוא נעשה if לכל מבנה json שיכול לקרות)דוגמה מקבילה בפייתון:
import json json_string = """{"name": "David", "age": 35, "details": {"city": "Tel Aviv", "country": "Israel"}}""" json_data = json.loads(json_string) print(f"Name: {json_data['name']}, Age: {json_data['age']}, City: {json_data['details']['city']}, Country: {json_data['details']['country']}")
4 שורות
אמנם לא כולל בדיקת תקינות ה json (את הקוד הזה כתבתי כמעט בעל פה ואני לא זוכר את כל הפונקציות שקימות, מה לעשות)
אז נניח כולל בדיקת תקינות 5 שורות
ובלי להתעסק עם טייפים
ובלי לקמפל@לא-מתייאש כתב בשאלה | מה רע בפייתון:
ולכן כנראה שמרוב החשק של JETBRAINS של להחליף את כל שפות של רמה גבוהה לשפה אחת מושלמת
אני לא חושב שזה מה שהם רצו לעשות
הם רצו לבנות java מודרנית, והם הצליחו, ובגדול
לא חושב שהיה שם מישהו שאי פעם חשב להחליף את פייתון
נכון ש kmp מיועד לכל הפלטפורמות, אבל מי שיכתוב ב kmp יהיה רק זה שכבר עכשיו כותב אפליקציות אנדרואיד, או קוטלין בכללילכל שפה יש את היתרונות שלה, ומקרי השימוש שלה, וזה דבר טוב
כי שפה אונברסלית לדעתי תצא, "כלום מהכול"שפה סטטית זה לא חסרון, ממש לא
גם שפה דינמית זה לא חיסרון
אלו פשוט שפות שונות, למטרות שונות -
@ENM כתב בשאלה | מה רע בפייתון:
@לא-מתייאש
אתה צודק, טעיתי בנוגע להבנה מה זה התיעוד שם
דיברת על טייפים דינמיים בקוטלין, אז עשיתי גוגל "kotlin dynamic types", אבל על פי הדוגמאות שנתת נראה שהעיקרון דומההדוגמה שנתת על פיענוח json היא דוגמה טובה למה שפה סטטית קשה לנתונים
יש את האופציה של טייפ סטטי, שאין צורך להתייחס, זה די מעצבן על כל json שיש לי לכתוב data classוהאופציה של ה"דינמי" היא לא באמת דינמית, כי אחרי שהמרת את ה json ל jsonElement
צריך לכל נתון לדעת איזה טייפ הוא ולהמיר ידנית לטייפ המתאים
(ומה קורה אם השרת שלך מחזיר לפעמים json כזה ולפעמים אחר? כמובן, בוא נעשה if לכל מבנה json שיכול לקרות)דוגמה מקבילה בפייתון:
import json json_string = """{"name": "David", "age": 35, "details": {"city": "Tel Aviv", "country": "Israel"}}""" json_data = json.loads(json_string) print(f"Name: {json_data['name']}, Age: {json_data['age']}, City: {json_data['details']['city']}, Country: {json_data['details']['country']}")
4 שורות
אמנם לא כולל בדיקת תקינות ה json (את הקוד הזה כתבתי כמעט בעל פה ואני לא זוכר את כל הפונקציות שקימות, מה לעשות)
אז נניח כולל בדיקת תקינות 5 שורות
ובלי להתעסק עם טייפים
ובלי לקמפלנכון זה יהיה יותר קצר, אבל הקמפול של שנייה הוא לא חסרון לדעתי, והם כותבים על האתר שלהם שזה בכלל בלי קמפול אז אני לא יודע למה אצלי לוקח שנייה.
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
ולכן כנראה שמרוב החשק של JETBRAINS של להחליף את כל שפות של רמה גבוהה לשפה אחת מושלמת
אני לא חושב שזה מה שהם רצו לעשות
הם רצו לבנות java מודרנית, והם הצליחו, ובגדול
לא חושב שהיה שם מישהו שאי פעם חשב להחליף את פייתון
נכון ש kmp מיועד לכל הפלטפורמות, אבל מי שיכתוב ב kmp יהיה רק זה שכבר עכשיו כותב אפליקציות אנדרואיד, או קוטלין בכללילדעתי הם בוודאי רוצים לעשות את זה, ולכן הם מפתחים ספריות רשמיות משלהם בשביל JUPYTER, וכו. הם קבוצה של גאונים שלא אכפת להם אם זה יתפוס או לא, כסף יש להם כבר מספיק מגוגל בשביל אנדרואיד ומכל החברות בשביל השרתים שלהם, בלי לדבר בכלל גל הIDE שלהם שזה הגרושים.
לכל שפה יש את היתרונות שלה, ומקרי השימוש שלה, וזה דבר טוב
כי שפה אונברסלית לדעתי תצא, "כלום מהכול"אני חושב שהם יצליחו אבל זה לא יתפוס כי זה יותר מידי דברים שצריך ללמוד. למשל טאורתי אפשר דרך קוטלין JS לעשות בדיוק מה שעשית בפייתון, ולהריץ את זה וזה יעבוד (אבל יצרך "קמפול" לJS) :
fun main() { val jsonString = """{"name": "David", "age": 35, "details": {"city": "Tel Aviv", "country": "Israel"}}""" val data: dynamic = JSON.parse(jsonString) println("Name: ${data.name}, Age: ${data.age}, City: ${data.details.city}, Country: ${data.details.country}") }
אבל רוב האלו שמשתמשים כבר שנים בקוטלין לא יודעים את זה בכלל...
וכן אני אומר שזה עניין של זמן, אבל קשה לי להאמין שזה יתפוס.שפה סטטית זה לא חסרון, ממש לא
גם שפה דינמית זה לא חיסרון
אלו פשוט שפות שונות, למטרות שונותנכון מאוד, אבל לדעתי עניין של זמן עד שJETBRAINS יצליחו, ואני אומר לך שהם רוצים לעשות את זה. אם תסתכל מה שהם עושים, הם עכשיו רוצים להחליף גם את פלאטר עם COMPOSE, הם רוצים לנצל את WASM בשביל האתרים גם עם COMPOSE.
ולדעתי הכל יעבוד פרפקט, אבל אין לי מושג אם זה יתפוס. -
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
הקמפול של שנייה הוא לא חסרון לדעתי
גם לדעתי הוא לא חסרון מבחינת זמן
הוא חיסרון מבחינת צורת עבודה
שפות מתקמפלות שונות משפות אינטרייפר@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לדעתי הם בוודאי רוצים לעשות את זה, ולכן הם מפתחים ספריות רשמיות משלהם בשביל JUPYTER, וכו
בוודאי שהם גם רוצים את זה, איפה שהוא בסוף רשימת הרצונות
הם לא עושים דברים מידי רציניים בשביל מפתחים חדשים
הם משקיעים במי שכבר יודע קוטלין, וזה בסדר
זה ממש לא המטרה הראשית או המשנית שלהם@לא-מתייאש כתב בשאלה | מה רע בפייתון:
למשל טאורתי אפשר דרך קוטלין JS לעשות בדיוק מה שעשית בפייתון, ולהריץ את זה וזה יעבוד (אבל יצרך "קמפול" לJS) :
אם אני רוצה לעשות את זה, אני כבר ישר יכתוב ב js
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
להחליף גם את פלאטר עם COMPOSE
פלאטר היתה פלטפורמת נישה בינונית, אז יחליפו אותה בפלטפורמת נישה מצוינת
הנישה נשארת נישה@לא-מתייאש כתב בשאלה | מה רע בפייתון:
הם רוצים לנצל את WASM בשביל האתרים גם עם COMPOSE.
אם הם באמת היו רוצים, התמיכה ב wasm לא היתה עכשיו בתמיכת אלפא
קוטלין היא שפה מצוינת להרבה דברים, לא להכול
אין שום דבר רע בעובדה הזאת -
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
, אבל פייתון ? אני לא מבין איזה חיסרון הוא בא למלא.
אני חושב שפייתון היא השפה בשביל כל מי שהמקצוע שלו זה לא הנדסת תוכנה, אבל הם צריכים לתכנת בשביל העבודה שלהם עצמה, דהיינו מתמטיקאים, ביולוגים, מדעני נתונים, וסתם עמך שרוצים סקריפט וחצי.
פייתון הכי דומה לאנגלית, ואפשר להשתמש בה בלי להבין עקרונות של הנדסת תוכנה.
שים לב שהספריות הכי חשובות שיש בפייתון ברמה שאין בשפות אחרות זה ספריות מתמטיות/מדעי הנתונים, וגם ספריות של FS וOS.
אחרי שזה פופולרי אז גם ספריות של ווב וכו' יש בפייתון, אבל בזה כבר יש יותר כמות ואיכות בJS. -
@ENM כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
הקמפול של שנייה הוא לא חסרון לדעתי
גם לדעתי הוא לא חסרון מבחינת זמן
הוא חיסרון מבחינת צורת עבודה
שפות מתקמפלות שונות משפות אינטרייפראם אין חסרון מבחינת זמן, אני לא כ"כ מבין אתה מתכוון כשזה סקריפטים, אם כן אתה מתכוון בשימוש של שרת, אני מבין, אבל בסקריפט בין כה אתה חייב להריץ אותו דרך פייתון אז מה שזה משנה שמאחורי הקלעים יש קמפול או לא?
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לדעתי הם בוודאי רוצים לעשות את זה, ולכן הם מפתחים ספריות רשמיות משלהם בשביל JUPYTER, וכו
בוודאי שהם גם רוצים את זה, איפה שהוא בסוף רשימת הרצונות
הם לא עושים דברים מידי רציניים בשביל מפתחים חדשים
הם משקיעים במי שכבר יודע קוטלין, וזה בסדר
זה ממש לא המטרה הראשית או המשנית שלהםהמטרה שלהם זה יותר החברות כי
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
למשל טאורתי אפשר דרך קוטלין JS לעשות בדיוק מה שעשית בפייתון, ולהריץ את זה וזה יעבוד (אבל יצרך "קמפול" לJS) :
אם אני רוצה לעשות את זה, אני כבר ישר יכתוב ב js
אני לא הבנתי מה זה משנה עדיין מה קורא אחרי הקלעים, וגם כשאני כותב בקוטלין בשביל הJVM, אז זה מוציא לי קובץ JAR, בשביל זה אני אכתוב בJAVA??
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
להחליף גם את פלאטר עם COMPOSE
פלאטר היתה פלטפורמת נישה בינונית, אז יחליפו אותה בפלטפורמת נישה מצוינת
הנישה נשארת נישהלא הייתי מגדיר בכלל את פלאטר כנישה, איפה שלא חיפשתי לעבוד בארץ בפיתוח אפליקציות רצו או פלאטר או REACT NATIVE, זה היה נראה שאפילו לא מכירים את השם של קוטלין. היום פלאטר לדעתי יותר פופולרי מREACT NATIVE
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
הם רוצים לנצל את WASM בשביל האתרים גם עם COMPOSE.
אם הם באמת היו רוצים, התמיכה ב wasm לא היתה עכשיו בתמיכת אלפא
הם משקיעים הרבה מאוד, לא פחות מבIOS שזה עכשיו בבטא, אני עוקב אחריהם ושומע את ההצהרות שלהם, מה לעשות שזה לוקח זמן, אבל אני עוקב אחרי זה מכבר שנה והיום זה פי 100 יותר טוב ממה שהיה לפני שנה.
קוטלין היא שפה מצוינת להרבה דברים, לא להכול
אין שום דבר רע בעובדה הזאתאני לא מסכים, אני חושב שהיא מצויינת בכל אבל לא הטובה ביותר, אבל עדיין מצויינת.
אם מדברים על סקריפטים, אני חושב שאיך לנהל את הDEPENDENCIES בפייתון זה ממש לא נוח, צריך לייצר VIRTUAL ENV ולהוריד אותם עם PIP כלומר שאם תריץ את זה על מחשב אחר זה לא יעבוד, בסקריפט קוטלין אתה רק כותב את הDEPENDENCIES בראש הקובץ והוא מוריד אותם אוטומטי ומנהל לבד שזה רק בשביל הקובץ הזה. זה מה שהכי מפריע לי בפייתון, כי קורא לי יחסית הרבה שאני צריך להריץ פרוייקט פייתון ואני מאבד הרבה זמן לגרום שזה יעבוד בכלל, דבר שאף פעם לא קרא לי ויקרא לי בקוטלין.
עכשיו להגיד שבגלל שקוטלין היא טייפ סטיטי, היא לא מצויינת בשביל סקריפטים לדעתי זה לא נכון, היא עדיין מצויינת ולדעתי עוד פעם לא פופלרית יותר טובה גם בזה, ואני אישי לא משתמש בפייתון אלא אם כן זה יקח לי יותר מידי זמן לכתוב מחדש את הספרייה בקוטלין וזה כמעט לא קורא לי כי אין לי עסק כלל היום בDATA SCIENCE או IA.אבל התמיהה שלי לא היה בכלל על סקריפטים, זה שאני מרגיש שיש הרבה תוכנות (אוליי רק בלינוקס ?) שעשו אותם בפייתון, ולפייתון אין סינטקס דקלרטיבית בשביל UI, אין את הקסם הזה שיש בREACT, FLUTTER, SWIFT, או ההכי מוצלח לדעת כל החברים שלי COMPOSE, וזה מפריע לי מאוד.
-
@sivan22 כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
, אבל פייתון ? אני לא מבין איזה חיסרון הוא בא למלא.
אני חושב שפייתון היא השפה בשביל כל מי שהמקצוע שלו זה לא הנדסת תוכנה, אבל הם צריכים לתכנת בשביל העבודה שלהם עצמה, דהיינו מתמטיקאים, ביולוגים, מדעני נתונים, וסתם עמך שרוצים סקריפט וחצי.
פייתון הכי דומה לאנגלית, ואפשר להשתמש בה בלי להבין עקרונות של הנדסת תוכנה.
שים לב שהספריות הכי חשובות שיש בפייתון ברמה שאין בשפות אחרות זה ספריות מתמטיות/מדעי הנתונים, וגם ספריות של FS וOS.
אחרי שזה פופולרי אז גם ספריות של ווב וכו' יש בפייתון, אבל בזה כבר יש יותר כמות ואיכות בJS.זה נכון, זה מה שמרגיז אותי, כשאני רואה תוכנה בפייתון, בפרט כשמגיעים לUI, אני שואל אבל למה ?? זה היה הרבה יותר פשוט עם פלאטר או קוטלין.
ואחת מהסיבות שאני אוהב את קוטלין זה שאני יכול להשתמש בכל ספריית JS דרך קוטלין JS, למשל כאן אפשר לראות שאני מוריד מNPM ספריית TIMEZONE 2.3.0.
וחוץ מזה יש ספרייה מאוד פופולרית בקוטלין כדי להריץ JS בתוך JVM או נטיבי.
בוקלטין יש ההרגשה הזאת שניתן לעשות הכל (ברמה גבוהה) שאני עדיין לא הרגשתי בשפה אחרת.באנדרואיד, אפשר ממש בקלי קלות להשתמש בספריית פייתון דרך CHAQUOPY , זה מה שעשו PCAPDROID והשתמשו בMITMPROXY, או SEAL והשתמשו בYTDLP, וזה מה שיעשה גם קיידרואיד בשביל סינון אתרים דרך MITMPROXY גם
אני חושב שזה עניין של זמן עד שמשהו כזה יגיע בשביל KMP -
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
בפרט כשמגיעים לUI
הכר בבקשה את Flet!!!
ברוך הבא לעולם הUI בפייתון!!!גילוי נאות: איני מבים בפיתוח כלל, וסיון הכיר לי את הספרייה הזו - אבל לאחר שתראה אותה בטח תדבר אחרת.
-
@י-פל כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
בפרט כשמגיעים לUI
הכר בבקשה את Flet!!!
ברוך הבא לעולם הUI בפייתון!!!גילוי נאות: איני מבים בפיתוח כלל, וסיון הכיר לי את הספרייה הזו - אבל לאחר שתראה אותה בטח תדבר אחרת.
אני מכיר וחוץ מזה שלא רשמי ושעדיין לא פגשתי תוכנה שמשתמשת בזה, ושאני אישי לא הייתי משקיע כוחות בפרויקט רציני עם זה כי זה לא יציב לפי מספר גרסה ומחשש שמא התמיכה יפסק ;
אין ווידג'טים – אבן היסוד של פלאטר (הגדרת ממשק משתמש בלתי משתנה). הקונספט הזה לא קיים.
יש לו ספריית control משלו, ולא ניתן להשתמש בספריית ממשק המשתמש הסטנדרטית של פלאטר.
זה גישה אימפרטיבית, כלומר אתה יוצר במפורש רכיבי ממשק משתמש (הנקראים בקרות) ומשנה את מצבם.
העדכונים של ממשק המשתמש הם מפורשים ודורשים קריאה ל-page.update()
. וזה לא דקלרטיבי.
תרגמתי דרך GPT מה שנאמר כאן https://dev.to/maximsaplin/flet-is-the-fastest-way-to-build-flutter-apps-in-python-its-not--3dkm?utm_source=chatgpt.comבקיצור אני לא רואה כאן מהפכה
-
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לא הייתי מגדיר בכלל את פלאטר כנישה, איפה שלא חיפשתי לעבוד בארץ בפיתוח אפליקציות רצו או פלאטר או REACT NATIVE, זה היה נראה שאפילו לא מכירים את השם של קוטלין. היום פלאטר לדעתי יותר פופולרי מREACT NATIVE
נכון לגמרי, אבל כל העניין של פיתוח אפליקציות הוא בעצמו יחסית נישה
אין כל כך הרבה מפתחי אפליקציות@לא-מתייאש כתב בשאלה | מה רע בפייתון:
אני לא הבנתי מה זה משנה עדיין מה קורא אחרי הקלעים, וגם כשאני כותב בקוטלין בשביל הJVM, אז זה מוציא לי קובץ JAR, בשביל זה אני אכתוב בJAVA??
ואחת מהסיבות שאני אוהב את קוטלין זה שאני יכול להשתמש בכל ספריית JS דרך קוטלין JS
kotlin נבנתה בשביל להחליף את java, לא את js
אם אני רוצה את היתרונות של js על פני קוטלין אז עדיף להשתמש ישר ב js
אם אני ארצה את היתרונות של java על פני קוטלין, אני אכתוב בjava
אבל ל java אין בכלל יתרונות על פני קוטלין, אז זה לא רלוונטי
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
אני חושב שאיך לנהל את הDEPENDENCIES בפייתון זה ממש לא נוח, צריך לייצר VIRTUAL ENV ולהוריד אותם עם PIP כלומר שאם תריץ את זה על מחשב אחר זה לא יעבוד, בסקריפט קוטלין אתה רק כותב את הDEPENDENCIES בראש הקובץ והוא מוריד אותם אוטומטי ומנהל לבד שזה רק בשביל הקובץ הזה
בפייתון יוצרים קובץ, requirements.txt של ה DEPENDENCIES
ואז פשוט
pip install -r requirements.txt
וכל ה DEPENDENCIES יורדות לבד
ברוב פרויקטי הפייתון בגיטהב עם הרבה DEPENDENCIES יש קובץ כזהובנוגע ליצירת venv
א. לא חובה, כמו שגריידל לא חובה
ב. ה ide יוצר לבד venv, כמו שבגריידל ה ide שם אותו לבד כשאתה יוצר פרויקט חדש@י-פל כתב בשאלה | מה רע בפייתון:
הכר בבקשה את Flet!!!
הספרייה הזאת נראית כמו ספריית צעצוע, לאנשים שרק עכשיו מתחילים פייתון
אם כבר הייתי מזכיר בהקשר הזה את ספריית tkinter המובנית בפייתון, או את ספריית pyside
אבל בגדול, פייתון לא כל כך טובה ליצירת ui
וודאי ש compose יותר טוב -
@ENM כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לא הייתי מגדיר בכלל את פלאטר כנישה, איפה שלא חיפשתי לעבוד בארץ בפיתוח אפליקציות רצו או פלאטר או REACT NATIVE, זה היה נראה שאפילו לא מכירים את השם של קוטלין. היום פלאטר לדעתי יותר פופולרי מREACT NATIVE
נכון לגמרי, אבל כל העניין של פיתוח אפליקציות הוא בעצמו יחסית נישה
אין כל כך הרבה מפתחי אפליקציות@לא-מתייאש כתב בשאלה | מה רע בפייתון:
אני לא הבנתי מה זה משנה עדיין מה קורא אחרי הקלעים, וגם כשאני כותב בקוטלין בשביל הJVM, אז זה מוציא לי קובץ JAR, בשביל זה אני אכתוב בJAVA??
ואחת מהסיבות שאני אוהב את קוטלין זה שאני יכול להשתמש בכל ספריית JS דרך קוטלין JS
kotlin נבנתה בשביל להחליף את java, לא את js
אם אני רוצה את היתרונות של js על פני קוטלין אז עדיף להשתמש ישר ב js
אם אני ארצה את היתרונות של java על פני קוטלין, אני אכתוב בjava
אבל ל java אין בכלל יתרונות על פני קוטלין, אז זה לא רלוונטי
גם אם לא נכתב על דעת זה, אבל תדע שהוקשעו יותר כוחות בקוטלין JS מבKMP, אבל חוץ מזה אצל מפתחי JAVA וקוטלין, זה פשע להשתמש בJS
ולמה לא TS ? מאמר של אחד שאני מתייעץ איתו הרבה : https://ivan.canet.dev/blog/2024/09/05/ts-kjs-types.html@לא-מתייאש כתב בשאלה | מה רע בפייתון:
אני חושב שאיך לנהל את הDEPENDENCIES בפייתון זה ממש לא נוח, צריך לייצר VIRTUAL ENV ולהוריד אותם עם PIP כלומר שאם תריץ את זה על מחשב אחר זה לא יעבוד, בסקריפט קוטלין אתה רק כותב את הDEPENDENCIES בראש הקובץ והוא מוריד אותם אוטומטי ומנהל לבד שזה רק בשביל הקובץ הזה
בפייתון יוצרים קובץ, requirements.txt של ה DEPENDENCIES
ואז פשוט
pip install -r requirements.txt
וכל ה DEPENDENCIES יורדות לבד
ברוב פרויקטי הפייתון בגיטהב עם הרבה DEPENDENCIES יש קובץ כזהובנוגע ליצירת venv
א. לא חובה, כמו שגריידל לא חובה
ב. ה ide יוצר לבד venv, כמו שבגריידל ה ide שם אותו לבד כשאתה יוצר פרויקט חדשקודם כל, אני יודע כי אני עושה את זה לצערי, אבל זה קודם כל וודאי לא פשוט לא כמו של קוטלין, והרבה פעמים הייתי צריך לחפש גרסה כזאת של פייתון כדי להריץ את הפרוייקט, חוץ מזה VIRTUAL ENV זה כמעט נהיה חובה בגרסאות האחרונות של אובנטו, אפשר לעקוף אבל ממש לא מומלץ, ובפרט שאני צריך להשתמש בגרסאות ישנות של פייתון.
בקוטלין, הרצתי הרבה יותר מבפייתון ואף פעם לא היה לי בעיות, וזה הרבה יותר נוח. רק תפתח את הפרוייקט עם INTELLIJ. -
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
ובפרט שאני צריך להשתמש בגרסאות ישנות של פייתון.
בדרך כלל, הפרויקטים שדורשים python יש ולא עובדים עם הגרסאות החדשות, הם פרויקטים לא טובים ולא מותחזקים
אני לא נתקלתי בצורך כזה, זה דיי נדיר@לא-מתייאש כתב בשאלה | מה רע בפייתון:
זה כמעט נהיה חובה בגרסאות האחרונות של אובנטו
אין לי מושג, אני בווינדוס
אבל לא באמת כזה נורא ליצור venv
זה רק פקודה אחת@לא-מתייאש כתב בשאלה | מה רע בפייתון:
רק תפתח את הפרוייקט עם INTELLIJ.
בפייתון זה הולך, רק תפתח את הפרויקט עם pycharm
-
@ENM כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
ובפרט שאני צריך להשתמש בגרסאות ישנות של פייתון.
בדרך כלל, הפרויקטים שדורשים python יש ולא עובדים עם הגרסאות החדשות, הם פרויקטים לא טובים ולא מותחזקים
אני לא נתקלתי בצורך כזה, זה דיי נדירמה לעשות שכשפונים אליי היום, זה בשביל ספריות או שצריך לכתוב BINDING בקוטלין בשביל הJVM או לכתוב אותם בחדש בכלל, לפעצים זה יותר פשוט, ואני סתם מאבד זמן כדי להריץ אותם...
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
זה כמעט נהיה חובה בגרסאות האחרונות של אובנטו
אין לי מושג, אני בווינדוס
אבל לא באמת כזה נורא ליצור venv
זה רק פקודה אחתגם כן, אבל לא הכי נוח, אבל אל וואי שזה יהיה בעייה שלי
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
רק תפתח את הפרוייקט עם INTELLIJ.
בפייתון זה הולך, רק תפתח את הפרויקט עם pycharm
יש לי את כל המוצרי JETBRAINS בגרסה מקצועית שלהם, וזה לא פשוט כ"כ לצערי
-
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לא הייתי מגדיר בכלל את פלאטר כנישה, איפה שלא חיפשתי לעבוד בארץ בפיתוח אפליקציות רצו או פלאטר או REACT NATIVE, זה היה נראה שאפילו לא מכירים את השם של קוטלין. היום פלאטר לדעתי יותר פופולרי מREACT NATIVE
אז למה אף אחד כמעט [לא פה, שאין פה הרבה מפתחים, וגם לא בתחומים/פרוג/ואפילו בקדם!] לא יודע פלאטר?
-
@י-פל כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
לא הייתי מגדיר בכלל את פלאטר כנישה, איפה שלא חיפשתי לעבוד בארץ בפיתוח אפליקציות רצו או פלאטר או REACT NATIVE, זה היה נראה שאפילו לא מכירים את השם של קוטלין. היום פלאטר לדעתי יותר פופולרי מREACT NATIVE
אז למה אף אחד כמעט [לא פה, שאין פה הרבה מפתחים, וגם לא בתחומים/פרוג/ואפילו בקדם!] לא יודע פלאטר?
אני לא הבנתי אם אתה מתכוון שהפיתוח של אפליקציות בכללי היא נישה או שרק פלאטר ולא react native
אבל בקיצור אני רק אומר לך מה אני מרגיש, אני נופל הרבה יותר על אפליקציות פלאטר מאשר בreact native, מה שבא לי בראש לאחרונה למשל, ניהול נתב של בזק, מיוזיק ווליום, זינג. כל זה פלאטר. -
@י-פל כתב בשאלה | מה רע בפייתון:
@ENM כתב בשאלה | מה רע בפייתון:
tkinter
מכוערת מאוד, מחילתך...
אני רואה הרבה אפליקציות בפייתון, בדרך כלל רק gtk.
-
@ENM כתב בשאלה | מה רע בפייתון:
הספרייה הזאת נראית כמו ספריית צעצוע, לאנשים שרק עכשיו מתחילים פייתון
אם כבר הייתי מזכיר בהקשר הזה את ספריית tkinter המובנית בפייתון, או את ספריית pyside
אבל בגדול, פייתון לא כל כך טובה ליצירת ui
וודאי ש compose יותר טובאי אפשר לעשות שום דבר עם tkinter.זו ספרייה מזעזעת, מיושנת מאוד ובסיסית להחריד.
מנסיוני, Flet היא ספרייה פנטסטית, קלה ופרקטית מאוד, חוצה פלטפורמות, ובקיצור, כמעט מושלמת.
היא מבוססת Flutter, מה שהופך אותה לעדכנית מאוד מבחינת עיצוב וגם למאוד מתוחזקת.בוודאי שאי אפשר להשוות אותה ל-tkinter, וגם לא ל-qtpython (עוד ספריית gui נחמדה)
-
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
אם אתה מתכוון שהפיתוח של אפליקציות בכללי היא נישה
זאת היתה כוונתי
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
בפייתון זה הולך, רק תפתח את הפרויקט עם pycharm
אולי יש לך פרויקטים מיוחדים
כי אצלי זה בדרך כלל עובד ככה@לא-מתייאש כתב בשאלה | מה רע בפייתון:זינג. כל זה פלאטר.
נ.ב. אני לא רוצה לומר את דעתי על אפליקציית זינג
זו ממש לא הוכחה שפלאטר טובה אלא להפך
אבל זה לא נכון, כי מי שכתב את האפליקציה הזאת, הוא גרוע, לא פלאטר גרועה -
@ENM כתב בשאלה | מה רע בפייתון:
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
אם אתה מתכוון שהפיתוח של אפליקציות בכללי היא נישה
זאת היתה כוונתי
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
בפייתון זה הולך, רק תפתח את הפרויקט עם pycharm
אולי יש לך פרויקטים מיוחדים
כי אצלי זה בדרך כלל עובד ככהאין לך מושג עד כמה חברות יכולות להשתמש בספריות מוזרות וחשוכות
@לא-מתייאש כתב בשאלה | מה רע בפייתון:
זינג. כל זה פלאטר.
נ.ב. אני לא רוצה לומר את דעתי על אפליקציית זינג
זו ממש לא הוכחה שפלאטר טובה אלא להפך
אבל זה לא נכון, כי מי שכתב את האפליקציה הזאת, הוא גרוע, לא פלאטר גרועהאני מכיר את המפתח של https://github.com/florent37/Flutter-AssetsAudioPlayer שהוא הפסיק את התמיכה בספרייה כי זה יותר מידי קשה לתמוך בגלל ההתראות, הforeground service , אז יש דברים שכן פלאטר הוא בעייתי מאוד, שכל דבר הוא משתמש בbridge, ולכן בשביל דברים כאלו זה מלכתחילה לא מתאים.