درخواست شل یا قطعه کدی برای ساخت فایل های php

درود خدمت عزیزان چند مدتی هست که می خوام برای جوملا افزونه بزنم برای ساخت ویو و کنترلر و مدل خیلی دچار مشکل می شم باید کار های تکراری زیادی رو انجام بدم تا جایی پیش داره می ره این مشکل که مجبور بشم به کسی سفارش بدم با شل برام خودکار فایل هایی که می خوام رو جنریت کنه و جاش بزاره

بخوام منظورمو بهتر بگم مثل ابزار mix در الکسیر و فونیکس

mix phoenix.gen.html   # Generates controller, model and views for an HTML based resource

اگر چیزی در این رابطه می شناسید که خیلی لطف کردید چون بعید می دونم جوملا تو فریم ورکش چنین ابزار هایی رو بزاره

برای scaffold کردن نیازی به shell scripting نیست , یه تمپلت generator ساده پیاده کن.
برای هر فایلی که لازم داری یک تمپلت درست کن و با استفاده از php مقادیر لازمو وقتی فرمان generate و که خودت نوشتی اجرا میکنی جاگزین کن، خیلی کار ساده ایه ، میتونی با php console تسک لازمو اجرا کنی. ‌ پیاده سازی اولیش نباید بیشتر از نیم ساعت زمان ببره. میتونی به متدها و کامپوننت scaffolding لاراول روی github یه نگاه بندازی.

در مورد html based resource بیشتر توضیح بده

1 پسندیده

از پروژه زیر با کمی تغییر استفاده کن

یا

1 پسندیده

اصلا اگر خیلی به mix علاقه داری از mix استفاده کن،
تسک های میکس gen رو با کمی تغییر تبدیل به gen tool و scaffold برای php بکن

1 پسندیده

ایده خیلی خوبی بود توماج جان اصلا بهش فکر نکردم فقط یک نمونه پیدا کنم تقریبا یک چیزی نزدیک به کاری که می خوام باهاش انجام بدم از همین mix باشه عالی هست

حتی اگر بتونم یک فایل exs بسازم که کلا جنریت کنه برام هم که خیلی بهتر می شه عالی می شه یعنی :sweat_smile:

1 پسندیده

چرا کمپایل نشه؟ اشاره به exs

1 پسندیده

چون تک فایل می شه و خیلی راحت می شه به افراد اون رو ارسال کرد ولی اگر بیاد یک پروژه باشه باید با اون کتابخونه هست دزایلر بود همچنین اسم هایی بشه تک فایلش کرد . یادگیری اون باز خودش یک سری سختی داره .

به همین منظور تک فایل باشه و فایل اجرایی به نظرم exs هم خوبه

تک فایل؟ ببخشید من گاهی طول میکشه بگیرم
exs فایل اجرایی نیست،‌scripting mode هست و خیلی هم از ex کند تره

1 پسندیده

شما ببخشید احتمالا من دارم بد توضیح می دم.

فایل exs در حقیقت یک فایل هست که ما داریم با elixir file_name.exs اون رو ران می کنیم اونجوری که من اون کتاب رو قبلا تو انجمن قرار دام یک فایل اجرایی و اون پروژه ex هم کامپایلری هست .

حالا فکر کنید برای کار ساده ای که می خوایم بکنیم بخوایم یک پروژه با mix new name_project بزنیم . حالا مشکل اینکه من می خوام به صورت یک نرم افزار به طرف بدم کاملا کامپایل شده یعنی طرف نره توش بزنه مثلا iex -S mix بیاد تو ترمینال تازه کامپایل بشه

اون راهی که کامل پروژه رو کامپایل می کنه به یک فایل

که من تستش نکردم فقط یم دو سه ساعتی اومدم مطالعه کردمش داکیومنتشو . متاسفانه پیچیدگی های خودشو اره

برای عبور از این پچیدگی ها و برای کار این چنینی گفتم که بهتره البته از نظر خودم که ممکنه اشتباه باشه بجای کامپایل شدن بیام exs بزنم

امید وارم منظورمو کامل تونسته باشم بیان کنم

1 پسندیده

راستش متوجه شدم که میخوای ساده باشه اما متوجه نشدم چطوری.
به هر حال mix با استفاده از elixirc در نهایت فایل .beam درست میکنه که که میشه مثل jar ازش استفاده کرد.
در اینجور موارد میشه از js هم استفاده کرد و میشه راحت با zeit برای هر سیتم عاملی build درست کرد.

کلا فکر کنم داریم از بحث خارج میشیم، با هر چیزی میشه این کارو انجام داد :smile:
اصلا با rust بهتره :grin:

1 پسندیده

داشتم به rust فکر می کردم همین الان اسمشو گفتید . پیش خودم گفتم کاشکی الان rust بلد بودم سر تفریح با اون می زدم . در مورد elixirc اطلاعات ندارم الان جستجو می کنم اگر یک فایل می ده مثل jar می شه استفاده کرد که خیلی عالیه از همون استفاده می کنم

ممنون توماج جان

2 پسندیده

به هر حال الیکسر علاوه بر اینکه یک زبان‌برنامه نویسیه ، کمپایلر الیکسر یک‌ واسط و بهتره بگیم transpiler هست برای beamVM، مثل رابطه سکالا یا کلوژر با JVM,
فایل beam در مسیر build درست میشه. Beam file بیش از jar به class file شباهت داره، منظور من کلا این بود که شباهت زیادی بین java و erlang در این زمینه وجود داره.

این را هم در نظر بگیر که در موردی که شما عنوان کردی،با توجه به اینکه scaffold برای php است پس بهترین گزینه استفاده خود PHP هست، چون دیگه نیاز به نصب و یادگیری تکنولوژی دیگه نیست.

1 پسندیده

با الیکسیر نمیشه فایل باینری مستقل تولید کرد؟ :thinking:
با پایتون میشه ولی :crazy_face::relaxed:

1 پسندیده

در اون زمینه من اطلاعاتی ندارم ولی @samdvr و @toomaj عزیز دارند .

ولی من به خواسته خودم فکر کنم تقریبا دارم می رسم

تو اینجا می شه ابزار cli نوشت خیلی ساده و کاربردی که من قبلا دیده بودم جایی ولی یادم نمی اومد الان می خوام روش کار کنم یک مجموعه ابزاری که همیشه برای جوملا نیاز دارم رو بسازم :sweat_smile:

خود جوملا که این کارا رو نمی کنه حداقل خودم بزنم . :sunglasses:

1 پسندیده

این تکرار کردن خیلی رو مخه : ) حتی تو cms ها و فریم ورکای جامعی ک تو دنیای پایتون و روبی وجود دارن هم پیش میاد … وقتی اپ بزرگ میشه … و هی قراره مدل جدید و لاجیک بنویسی…

منم چند وقتیه یه اتو جنریت برای جنگو استارت زدم … ولی کاملش نکردم …
مدل و لاجیک رو با کلید واژه ها و بصورت جیسونی میخام بزنم … و بدم خودش تحویلم بده : )))

2 پسندیده

راجبه BPMSها هم تحقیق کن … برای بیزینس های خیلی سنگین بکار میرن … و تعداد انگشت شماری ازشون … تو دنیا وجود داره(البته درستو حسابی) …

1 پسندیده

با escript میشه یک فایل درست کرد ولی به اندازه جاوا و … portable نیست

2 پسندیده

سام عزیز از چه لحاظی می فرمایید زیاد portable نیست ؟

باید beam و داشته باشن تا کار کنه که کل دلیلی که binary میکنی و از بین میبره go rust یا هرزبان native برای اینکار بهترند

1 پسندیده

@salvador, @shahryarjb,
منظور از فایل باینری چیه؟ فایلهای جاوا هم برای اجرا نیاز به jvm دارند.

1 پسندیده