בעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??
-
@ב-ל אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
החלטתי לכתוב לרן בר-זיק, הוא מתעסק הרבה בשוק הלימוד והתעסוקה, בפרט של אוטוטדידקטים וחרדים וכדו'. להלן תשובתו:
הי דוד,
ראשית, נעים להכיר
שנית, קח את העצה שלי בערבון מוגבל ועם הדיסקליימרים הרגילים.למרבה הצער עולם הפרילנסרים מורכב ברובו, בטח בישראל, מעבודות וורדפרס/PHP. זה לא אומר שאי אפשר לכתוב וורדפרס ברמה אולטרא גבוהה ואי אפשר להרוויח כסף רב מזה. אבל זה השוק כרגע. יש עבודותNode.js. אבל הן בהיקף מצומצם, ליעוץ בלבד או כפרילנסר שמגיע לעבוד כתגבור לצוות.
יש את קבוצת Node.js בפייסבוק, אולי שווה להתייעץ גם איתם. כאמור לא כל החוכמה נמצאת אצלי.
רן
אני ממש מתוסכל...
השקעתי כזה הרבה שעות ללימוד ותרגול בnode.js (ובj.s בכלל)
כי כולם אומרים (כולל בפורום דידן) שphp זה שפה ישנה ישנה ודוחה ו-וורדפרס זה סתם המוני ופשוט
ותכלס' מתברר לי שאני ממש בצד הלא נכון של הכביש...תבין אתה השקעת כמה שעות, אני השקעתי שנתיים תמימות. לכן אני מסרב לוותר בקלות. בסוף אמצע את דרך האמצע להסתדר. רק חשוב לי שזה יהיה לפי סטנדרטים מקובלים בעולם המקצועי ולא שאמציא לי דרכים אישיות שלא יהיה לי מה לעשות איתם מחוץ למשרד האישי שלי.
עריכה - זה כמובן לא מדוייק. אתה בצד הלא נכון רק אם אתה רוצה להיות עצמאי. אם אתה רוצה להשתלב בחברות רציניות יותר אז רכשת כלי מצוין.
-
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אתה בצד הלא נכון רק אם אתה רוצה להיות עצמאי. אם אתה רוצה להשתלב בחברות רציניות יותר אז רכשת כלי מצוין.
עובד רק אחה"צ . כך שאני לא רואה את עצמי עובד כשכיר בחברה מסודרת
-
@ב-ל אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
החלטתי לכתוב לרן בר-זיק, הוא מתעסק הרבה בשוק הלימוד והתעסוקה, בפרט של אוטוטדידקטים וחרדים וכדו'. להלן תשובתו:
הי דוד,
ראשית, נעים להכיר
שנית, קח את העצה שלי בערבון מוגבל ועם הדיסקליימרים הרגילים.למרבה הצער עולם הפרילנסרים מורכב ברובו, בטח בישראל, מעבודות וורדפרס/PHP. זה לא אומר שאי אפשר לכתוב וורדפרס ברמה אולטרא גבוהה ואי אפשר להרוויח כסף רב מזה. אבל זה השוק כרגע. יש עבודותNode.js. אבל הן בהיקף מצומצם, ליעוץ בלבד או כפרילנסר שמגיע לעבוד כתגבור לצוות.
יש את קבוצת Node.js בפייסבוק, אולי שווה להתייעץ גם איתם. כאמור לא כל החוכמה נמצאת אצלי.
רן
אני ממש מתוסכל...
השקעתי כזה הרבה שעות ללימוד ותרגול בnode.js (ובj.s בכלל)
כי כולם אומרים (כולל בפורום דידן) שphp זה שפה ישנה ישנה ודוחה ו-וורדפרס זה סתם המוני ופשוט
ותכלס' מתברר לי שאני ממש בצד הלא נכון של הכביש...אני מקווה שPHP לא תשאר הצד ה"נכון" של הכביש בעוד עשר שנים
ושיקומו פריימרוקים טובים בשפות אחרות.
למעשה גם היום לא כל העצמאיים בצד שרת עובדים עם PHP
ואדרבה נראה לי שפרויקטים ארוכי טווח לא נמצאים דווקא בPHP
כי אם זה פרוייקט ארוך ורציני לדעתי לא חכם לבנות אותו בPHP.
ואם אתה שואל אותי אני אוהב יותר את הפרוייקטים הארוכים ולא לחפש לקוח חדש כל חודש. -
@ב-ל נראה לי שתסכולך לא במקום.
מה התחדש לך כאן?
לפני הדיון האחרון חשבת שפרוייקטים חדשים בנוד מסתובבים חופשי לכל מי שרוצה?
ידעת שזה יותר עבודה מאתר וורדפרס מתבנית, וממילא ידעת שזה משהו פחות נפוץ.
אף אחד לא אמר שזה לא קיים, רק שזה לא רוב העבודות בתחום. בסדר. גם מפתחי נוד טובים הם פחות נפוצים.בכל מקרה ההשקעה שלך לא הולכת לשום מקום. מה שקיבלת שווה הרבה. אתה מכיר שפה, פריימוורק, וכלים שלא הולכים לשום מקום מהר.
אם תראה שלא הולך לך למצוא קליינטים, תמיד תוכל ללמוד להקים אתרי וורדפרס.
-
@yossiz אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
ידעת שזה יותר עבודה מאתר וורדפרס מתבנית, וממילא ידעת שזה משהו פחות נפוץ.
זה לא הופנה אלי אבל אשיב מצידי: לא, לפחות אני לא לקחתי בחשבון עד כמה מחד מתאפשר ליצור בוורדפרס דברים מתקדמים ולא סטנדרטיים ועד כמה זה קל ונפוץ. חשבתי שגם בוורדפרס צריך להיות מתכנת ברגע שזה אתר שקצת יוצא מהקופסה של חנות/בלוג וכדו'. וממילא לא לקחתי בחשבון שמרבית הפרוייקטים שאקבל כעצמאי לא יתאימו למידה של NODE.
וגם, לא לקחתי בחשבון שבNODE אין תחליפים ראויים מספיק, זו הרי שפה פופולרית מספיק. -
@yossiz אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אני מרגיש שלא בנוח עם ההספדים שהולכים פה, אני מרגיש שזה לא מוצדק. אין לי מספיק ידע על השוק, אבל זה מרגיש לי מוגזם.
גם אני. אבל אני לא שומע ממישהו מוצא אחר. התייעצתי הרבה וחפרתי הרבה. מחכה לישועה.
-
@yossiz אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אני מרגיש שלא בנוח עם ההספדים שהולכים פה, אני מרגיש שזה לא מוצדק. אין לי מספיק ידע על השוק, אבל זה מרגיש לי מוגזם.
אני מזדהה עם אי הנוחות שלך, אולי בגלל חוסר ניסיון שלי, אבל נראה לי שהמספידים כאן גם לא מדברים מתוך עודף ניסיון
לא מבין על מה המהומה, יש לכם כלי רב עוצמה ביד, מה חסר לכם?
לקוח מבקש אתר תדמית \ חנות \ בלוג? בונים בוורדפרס בכמה דקות
אם זה מצריך תכנות של יותר מעשר שורות קוד, לא נוגעים בוורדפרס ולא ב PHP, קונים תבנית עיצובית בכמה דולרים שמותאמת לקליינט שאתם מכירים (אנגולר \ VUE) ובונים לה שרת.
במקרה הכי גרוע, משלבים אתר וורדפרס עם אפליקצית רקע שיכולה להיות כתובה בנוד, זה יכול רק להועיל לביצועים -
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@yossiz אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אני מרגיש שלא בנוח עם ההספדים שהולכים פה, אני מרגיש שזה לא מוצדק. אין לי מספיק ידע על השוק, אבל זה מרגיש לי מוגזם.
גם אני. אבל אני לא שומע ממישהו מוצא אחר. התייעצתי הרבה וחפרתי הרבה. מחכה לישועה.
אני במקומך הייתי מרים את המערכת המקבילה לוורדפרס, בנוד.
או בפרטי או בעבודת צוות. (עוד יותר לא מסובך אם כמה מהמוכשרים דאתרא הדין יעשו בשיתו"פ).
לכאו' הייתי עושה את זה גם עכשיו, רק שיש לי מדי הרבה תכניות לפני... -
@chagold אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@yossiz אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אני מרגיש שלא בנוח עם ההספדים שהולכים פה, אני מרגיש שזה לא מוצדק. אין לי מספיק ידע על השוק, אבל זה מרגיש לי מוגזם.
גם אני. אבל אני לא שומע ממישהו מוצא אחר. התייעצתי הרבה וחפרתי הרבה. מחכה לישועה.
אני במקומך הייתי מרים את המערכת המקבילה לוורדפרס, בנוד.
או בפרטי או בעבודת צוות. (עוד יותר לא מסובך אם כמה מהמוכשרים דאתרא הדין יעשו בשיתו"פ).
לכאו' הייתי עושה את זה גם עכשיו, רק שיש לי מדי הרבה תכניות לפני...לא בטוח שזה מתאים, PHP מתאימה לשרתים שיתופיים בגלל שהקוד מנותק מהשרת אפאצ'י, נוד היא עצמה שרת, יותר מסובך להרים אותה על שרת שיתופי, זה לא יצבור פופולריות כמו וורדפרס
-
@yossiz אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אגב, אין פה בפורום משתמשי Laravel?
רק עכשיו שמת לב לשאלה הזאת, כבר כתבתי - באשכול הקודם - עכשיו עליו...
ומי שבאמת מעוניין בחיים מאושרים זה המתכון שלי (זה לא אומר שאין אפ' אחרת...
)
צד שרת:
PHP
Laravel
Inertiajs
Laravel forgeצד לקוח:
React/Vue (כמובן עם inertiajs)
Tailwindcssכלים:
Phpstormועוד עזרים:
Tinkerwell -
@יוסף-בן-שמעון אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אם זה מצריך תכנות של יותר מעשר שורות קוד, לא נוגעים בוורדפרס ולא ב PHP, קונים תבנית עיצובית בכמה דולרים שמותאמת לקליינט שאתם מכירים (אנגולר \ VUE) ובונים לה שרת.
זו הבעיה בדיוק, כך גם אני חשבתי בעבר. אבל זה ממש לא נכון, התבנית עיצובית זה פותר חלקית באמת. אבל השרת לא נפתר כלל. שרת זה לא משהו של כמה דקות, זה פרוייקט בפני עצמו ברגע שהאפליקציה גדלה. (אני מנוסה בזה די והותר)
ומאידך, בוורדפרס, הפתרונות שקיימים שם נותנים מענה קל גם לדברים שצריך צד שרת מורכב. כי המון אנשים בנו המון תוספים מובנים להמון מטרות.
כדי לדעת מתי זה מספיק מורכב בשביל שוורדפרס לא שווה את זה - צריך להכיר אותו טוב. ובמרבית הפרוייקטים שלא מאוד גדולים המשוואה כנראה לצד וורדפרס. -
@chagold אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אני במקומך הייתי מרים את המערכת המקבילה לוורדפרס, בנוד.
קיימים כבר מערכות כאלו. היתרון העיקרי ש לוורדפרס אינו טכנולוגיה מדהימה, אלא הפופלריות והותק שלה - שגרמו שנבנו לה אין ספור תבניות ותוספים הנותנים מענה לכל צורך.
גם העובדה שהPHP יכול לגעת בצד שרת וצד לקוח יחד בקלות גם משפרת את זה. -
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@יוסף-בן-שמעון אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
אם זה מצריך תכנות של יותר מעשר שורות קוד, לא נוגעים בוורדפרס ולא ב PHP, קונים תבנית עיצובית בכמה דולרים שמותאמת לקליינט שאתם מכירים (אנגולר \ VUE) ובונים לה שרת.
זו הבעיה בדיוק, כך גם אני חשבתי בעבר. אבל זה ממש לא נכון, התבנית עיצובית זה פותר חלקית באמת. אבל השרת לא נפתר כלל. שרת זה לא משהו של כמה דקות, זה פרוייקט בפני עצמו ברגע שהאפליקציה גדלה. (אני מנוסה בזה די והותר)
ומאידך, בוורדפרס, הפתרונות שקיימים שם נותנים מענה קל גם לדברים שצריך צד שרת מורכב. כי המון אנשים בנו המון תוספים מובנים להמון מטרות.
כדי לדעת מתי זה מספיק מורכב בשביל שוורדפרס לא שווה את זה - צריך להכיר אותו טוב. ובמרבית הפרוייקטים שלא מאוד גדולים המשוואה כנראה לצד וורדפרס.דבריך נכונים, ועדיין אין זו סיבה להספיד את נוד
אתה מתאר כמה קלות יש בלהקים אתר וורדפרס, אבל אתה מזניח את החסרונות שלה, לדוגמא ככל שאתה מרבה בתוספים אתה פוגע בביצועים.
אז נכון שהרבה בוחרים באפשרות של וורדפרס, אבל אתה או @ב-ל שבחרתם בנוד יכולים להמשיך בבחירה הנכונה שלכם, ולא לדשדש בביצה הממלכדת של וורדפרס.
לדעתי אין צורך להכיר את וורדפרס לעומק, אפשר תוך כדי נסיעה ללמוד אותו במקרה הצורך, כדאי להכיר מלמעלה את האפשרויות הבסיסיות, ואם הדרישות של הלקוח מורכבות יותר מהבסיס אפשר וכדאי לבנות מאפס בנוד עם תבנית עיצוב. -
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
זה לא הופנה אלי אבל אשיב מצידי: לא, לפחות אני לא לקחתי בחשבון עד כמה מחד מתאפשר ליצור בוורדפרס דברים מתקדמים ולא סטנדרטיים ועד כמה זה קל ונפוץ. חשבתי שגם בוורדפרס צריך להיות מתכנת ברגע שזה אתר שקצת יוצא מהקופסה של חנות/בלוג וכדו'. וממילא לא לקחתי בחשבון שמרבית הפרוייקטים שאקבל כעצמאי לא יתאימו למידה של NODE.
אני חושב שזו לא גישה נכונה להעדיף חיים קלים של וורדפרס, אתה מציע יתרון ללקוח אם אתה בונה לו אתר מקוסטם בנוד, לבנות בלוג מאפס זה לא ערך מוסף, לכן זו עוולה ללקוח, אבל לבנות לו אפליקציה עיסקית בנוד זה לתת לו ערך מוסף ששוה לו כסף
-
@יוסף-בן-שמעון אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
@davidnead אמר בבעקבות האשכול תבניות של API - איזה תחליף יש לnode.js ??:
זה לא הופנה אלי אבל אשיב מצידי: לא, לפחות אני לא לקחתי בחשבון עד כמה מחד מתאפשר ליצור בוורדפרס דברים מתקדמים ולא סטנדרטיים ועד כמה זה קל ונפוץ. חשבתי שגם בוורדפרס צריך להיות מתכנת ברגע שזה אתר שקצת יוצא מהקופסה של חנות/בלוג וכדו'. וממילא לא לקחתי בחשבון שמרבית הפרוייקטים שאקבל כעצמאי לא יתאימו למידה של NODE.
אני חושב שזו לא גישה נכונה להעדיף חיים קלים של וורדפרס, אתה מציע יתרון ללקוח אם אתה בונה לו אתר מקוסטם בנוד, לבנות בלוג מאפס זה לא ערך מוסף, לכן זו עוולה ללקוח, אבל לבנות לו אפליקציה עיסקית בנוד זה לתת לו ערך מוסף ששוה לו כסף
בלוג ואפליקציה עסקית הם שתי קצוות. מקרי האמצע הם הרוב.
ורק כדי להרגיע - אין לי שום כוונה ורצון ללמוד וורדפרס, לא הולך לקרות. אמצא את הדרך שלי להתפרנס בלעדיו.נ.ב. אתה מדבר מניסיון? אתה מכיר את שתי המערכות ומקבל החלטות ביניהן עבור פרוייקטים של לקוחות?
-
הוזכרו כאן Frameworks רבים אולם מקומה של ASP.NET נפקד, לכן לקחתי על עצמי בדחילו ורחימו את המשימה החשובה
( אני חייב לציין שזו דעתי האישית בלבד, ואני אשמח לשמוע את חוות דעתם של המומחים ממני כאן)
ASP.NET מהירה בהרבה מNodeJs, ולמעשה היא נחשבת אחת מהWeb servers המהירים והיעילים ביותר כיום (משאירה הרחק מאחור את Java, Go, NodeJs).
בניגוד לפיתוח בסביבת NodeJs בה אתה נתון לחסדיהם של ספריות שנכתבו ע"י חברות ואנשים שונים בתקווה שהכל יתחבר איך שהוא לאפליקציה אחת, בASP.NET הפיצרים החשובים והשימושים ביותר מובנים בFramework לדוגמא:
- Dependency Injection
- Logger
- Localization
- Template engine
- WebSocket
- ORM
- Authentication/Authorization
** חלק מהפריטים ברשימה הנ"ל מהווים ספריות בפני עצמם, אולם כולם נכתבו ותוכננו בהתאם לתמונה הגדולה.
כחלק מהגדרות הBuild ניתן לבחור במצב Self-hosted, מה שאומר שבסיום התהליך, נקבל קובץ הרצה ללא תלויות (ניתן להרצה כיישום Portable על כל מחשב), לחלופין ניתן לפרוס את האפליקציה באמצעות תמונת Docker רשמית של Microsoft.
מספר בקשות לשניה:
לסיכום
NodeJs איננה מציעה יתרונות כלשהם על פני ASP.NET ,למעשה אני סבור שהיא מציעה רק חסרונות שהמשמעותי שביניהם הוא היותה Single-Threaded, הטיב להגדיר זאת @dovid בשימוש באנלוגיה של טרקטור צעצוע שעבר הסבה לשימוש באתרי בנייה.
ASP.NET לעומת זאת היא סביבה יציבה מאוד, בה יש דרך מוגדרת לבצע משימות, בה כולם מדברים באותה שפה ושבה אתה מקבל יכולות אדירות בתמורה למעט מאוד שורות קוד.אגב שווה להכיר את התחביר המינימלי החדש של ASP.NET שדומה באופן חשוד לExpress:
var app = WebApplication.CreateBuilder(args).Build(); app.MapGet("/", () => "Hello World!"); app.Run();
שרת HTTP בשלושה שורות בלבד.
הקוד הנ"ל מתאפשר עקב שיפורים (חלקם בתחביר של השפה) שהתבצעו בשנים האחרונות:
- Implicit using directives: חסל סדר הרשימה הארוכה של Using בראש כל קובץ.
- Top level statements: ניתן לכתוב קוד בקובץ הראשי מחוץ למחלקה או למתודה,
- אין יותר צורך במחלקת
Startup
.
-
@davidnead זה בדיוק מה שניסיתי להסביר, מנסיוני הצנוע הפיתוח בASP מהיר יותר מNode.
הקמת אפליקציה הכוללת מסד נתונים, אימות, וHttp API היא משימה שמסתכמת בדקות ספורות עבור מפתחים בASP.
ובכלל הפיתוח בASP, מלא אוטומציות, לדוגמה המחלקות שאתה בונה מתורגמות לטבלאות במסד הנתונים, אחרי שיש לך Entity שמייצגת טבלה, באפשרותך ליצור Controller שמכיל נקודות קצה (וכן Views המכילים קוד תצוגה) עבור כל הפעולות הבנאליות (CRUD) עבור אותו Entity בלחיצת כפתור. -
טוב, לא התעצלתי. החלטתי לכתוב גם לינון פרק (tocode). אולי מוכר פחות, אבל שוה לא פחות. גם הוא היה אדיב ומהיר בתשובתו:
"הי דוד
מעבר משכיר לעצמאי זה תמיד נושא שמעניין לדבר עליו
לשאלה שלך-
כדאי להתחיל מלהסתכל על הלקוחות ולא על הטכנולוגיה. מה מיוחד בלקוחות הקטנים האלה שלך? איך הם מגיעים אליך? במה בדיוק אתה עוזר להם?
לדוגמא חברת BOA Ideas יודעים לקחת לקוח קטן שיש לו חנות פיזית ולפתוח לו חנות אינטרנטית בשופיפיי. הם בנו סביב זה תהליך והיום בזמן מאוד קצר הם יכולים לתת פיתרון ללקוח. הלקוח הוא עדיין קטן וזה פרויקט שלכאורה "קל" להשיג, והפיתרון שלהם יותר טוב מכל פרילאנסר שיבנה אתר תפור עבור הלקוחות הספציפיים שלהם. אבל, הם לא הולכים לעזור למישהו שרוצה אתר תדמית או אתר לבלוג - אך ורק מישהו שיש לו כבר חנות פיזית ורוצה להעביר אותה לדיגיטל.
רב מסר מפעילים מערכת דיוור שאינסוף בעלי עסקים קטנים משתמשים בה כדי לשלוח מייל ללקוחות שלהם ולנהל את רשימות הלקוחות. בתור בעל עסק הבחירה להשתמש במערכת הקיימת של רב מסר היא הרבה יותר הגיונית מלפתח משהו בעצמך עם פרילאנסר ספציפי.
ויש עוד עשרות ומאות דוגמאות לחברות מצליחות שעובדות עם בעלי עסקים קטנים או לקוחות פרטיים כדי לפתור להם בעיות.
ומה לגבי פרילאנסרים?
גם פה מהיכרות עמוקה עם התחום אני יודע להגיד שפרילאנסרים שמרוויחים טוב לא עובדים עם לקוחות פרטיים קטנים אלא עם חברות גדולות. בתור מתכנת Node.JS מקצועי יהיה לך הרבה יותר קל לקבל תשלום על פיתוח מודול מורכב שמתממשק עם מערכת של חברה גדולה מאשר פיתוח של אתר אינטרנט או בלוג.עצה ששווה שני גרוש
אפשר לעבוד עם Node.JS ולפתח מוצר שעוזר לאותם לקוחות קטנים שאתה מדבר עליהם. המוצר שלך יהיה הרבה יותר רווחי מאשר לבנות לכל לקוח פיתרון מותאם אישית עבורו.אפשר גם להחליט לפתח קוד בהתאמה אישית ללקוח, אבל פה צריך להבין שלקוח פרטי לא צריך/יכול/רוצה לשלם על זה. כמו שאני לא אלך לחייט פרטי בשביל בגד ללבוש לסופר. בתור חייט פרטי אתה צריך לקוחות שמוכנים לשלם וכן גם פה תצטרך לעבוד קשה בשביל שיגיעו אליך."
די מתאים לכל מה שנאמר פה, עושה סדר, ומחדד את הדילמות.