pesarkhobeee
New Member
[FONT="] مدتی بود کتاب رسمی اموزش سمفونی رو با هزارو یه بدبختی میخوندم و وقتی چهار فصلشو خوندم یه ایده تو ذهنم جرقه زد![/FONT]
[FONT="]قبل از هر چیزی از خانوم احمدی متشکرم که این کتاب رو برای دانلود گزاشتن و شما میتونید اونو از اینجا ببینید.[/FONT]
[FONT="]قبل از اینکه چیزی از ایدم بگم یه توضیح راجع به متن پایین بدم![/FONT]
[FONT="]متن زیر ترجمه ازاد و نادرست و دست و پا شکسته ی من از بخشی از فصل اول این کتابه که فقط برای این فارسیش کردم تا یه معرفی کوتاه از روی مرجع رسمی به زبان فارسی از سمفونی وجود داشته باشه!
[/FONT]
[/FONT]
[FONT="]و اما در مورد ایدم![/FONT]
[FONT="]باید بگم فکر نکنم ترجمه کل کتاب به صورت صحیح توسط ما مقدور باشه ! شایدم باشه؟[/FONT]
[FONT="]ولی همه ما دستو پا شکسته یه خورده انگلیسی بلدیم و وقتی مثلا این کتابو میخونیم ، وقتی به کلمات نا اشنا بر میخوریم اونو معنی میکنیم تا بتونیم متنو بفهمیم.[/FONT]
[FONT="]خوب مسئله اینجاس که ممکنه نصف ادمهایی که این [/FONT][FONT="]pdf[/FONT][FONT="] رو میخونن همشون اون کلمه خاص رو بلد نباشن و اگر نفر اولی که این کتاب رو میخوند معنی اونو با نرم افزار Adobe Acrobat بر روی کلمه انگلیسیش کامنت میکرد و در اختیار بقه میگزاشت دیگه بقیه مشکلی نداشتن!!![/FONT]
[FONT="]من این کارو تقریبا برای فصل اول کردم و شما میتونید در اینجا ببینیدش![/FONT]
[FONT="]خوب پس با داشتن اکروبات و یکمی پشتکار میتونیم این کارو بکنیم ولی یه مشکل میمونه و اونم چگونگی اشتراک ایناس و من فکر میکنم یه SVN شاید بتونه این کارو بکنه ، البته من اطلاعات دقیقی ندارم و خوشحال میشم پیشنهاداتو انتقادات خودتونو بگید تا یه حرکت درست و اصولی رو انجام بدیم.[/FONT]
[FONT="]کوتاه راجع به سمفونی[/FONT]
[FONT="]یک فریم ورک یا قالب کاری اغلب به کدها ساختار میدهد، و باعث میشود تا کدهای طراحان بهتر نوشته شوند و خواناتر باشند و همچنین قابل نگه داری تر![/FONT]
[FONT="]همچنین طراحی برنامه را قانونمند میکند باعث اسانتر شدن برنامه نویسی میشود زیرا عمل پیچیده را به دستورات ساده تبدیل میکنید.[/FONT]
[FONT="]سمفونی یک فریم ورک کامل است که برای بهینه کردن صفحات وب بوسیله چندین خاصیت بهینه شده![/FONT]
[FONT="]برای مبتدی ها کاری که اون انجام میده جدا کردن لایه نمایش از کدهای برنامه و جدا کردن هر دوی اینها از منابع داده است.[/FONT]
[FONT="]به وسیله ابزارها و کلاسهای متعدد سمفونی میتواند در کمترین زمان ممکن برنامه های تحت وب پیچیده را به سر انجام برساندبعلاوه ان ، وظایف رایج را به صورت خودکار انجام میدهد تا طراحان بتوانند به صورت کامل بر روی نقاط خاص برنامه خود تمرکز کنند.[/FONT]
[FONT="]اخرین نکته ای که میتوان ذکر کرد اینست که از دوباره کاری و افتادن در یک چرخه ، در ایجاد پروژه های متعدد جلوگیری میکند.[/FONT]
[FONT="]سمفونی کاملا توسط [/FONT][FONT="]php5[/FONT][FONT="] نوشته شده و ازمایش خودشو توسط برنامه های گوناگون دنیای واقعی پس داده![/FONT]
[FONT="]اون با اکثر [/FONT][FONT="]data base[/FONT][FONT="] های موجود سازگاره مانند [/FONT][FONT="]mysql[/FONT][FONT="] و [/FONT][FONT="]postgre sql[/FONT][FONT="] و [/FONT][FONT="]oracle[/FONT][FONT="] و [/FONT][FONT="]microsoft sql server[/FONT]
[FONT="]اون بر روی تمام سیستم های [/FONT][FONT="]unix base[/FONT][FONT="] و [/FONT][FONT="]windows[/FONT][FONT="] قابل اجراست .[/FONT]
[FONT="]
[/FONT]
[FONT="]خوب حالا یه نگاه دقیقتر به خصوصیاتش میندازیم:[/FONT]
[FONT="]سمفونی برای براوردن نیازهای زیر درست شده:[/FONT]
[FONT="]-[/FONT][FONT="]نصب و تنظیم ساده دراکثر پلتفرم ها (( و تنظیم شده برای کار بروی پلتفرم های استاندارد [/FONT][FONT="]unix base[/FONT][FONT="] و [/FONT][FONT="]windows [/FONT][FONT="]))[/FONT]
[FONT="]-[/FONT][FONT="]موتور پایگاه داده مستقل[/FONT]
[FONT="]-[/FONT][FONT="]برای اکثر موارد براحتی استفاده میشه اما انقدر انعطاف داره که برای مواد پیچیده هم به کار بره[/FONT]
[FONT="]-[/FONT][FONT="]با اکثر الگوهای طراحی و تمرینی سازگار است[/FONT]
[FONT="]-[/FONT][FONT="]دارای کدهای بسیار خوانا است و برای خوانایی بیشتر برای مستند سازی از [/FONT]php documentor[FONT="] استفاده میکنه[/FONT]
[FONT="]-[/FONT][FONT="]توسعه اسان و اجازه تلفیق ان با سایر کتابخانه ها[/FONT]
[FONT="]-[/FONT][FONT="]خود کار سازی خصوصیات پروژهای وب[/FONT]
[FONT="]-[/FONT]
Based on the premise of convention over configuration—the developer needs to
[FONT="]-[/FONT]Enterprise-ready—adaptable to existing information technology (IT) policies and
[FONT="]خود کار سازی خصوصیات پروژهای وب[/FONT]
[FONT="]اکثر خصوصیات رایج پروژه های وب به وسیله سمفونی خودکار سازی شده اند که به شرح زیرا ند:[/FONT]
[FONT="]-[/FONT][FONT="]لایه های بین المللی درون ساخته اجازه ترجمه هر دو لایه داده و نمایش را برای محلی سازی محتوا میدهند.[/FONT]
[FONT="]-[/FONT][FONT="]پوسته ها و لایه های ارائه محتوا (( رابط کاربری)) میتوانند توسط طراحان [/FONT][FONT="]HTML[/FONT][FONT="] ، بدون داشتن دانش از فریم ورک ساخته شوند . کمک کننده ها (( [/FONT][FONT="]Helper[/FONT][FONT="])) موجب کاهش کدهای لایه ارائه بوسیله ایجاد قسمت های بزرگ ، تنها بوسیله صدا کردن توابع ساده میشوند.[/FONT]
[FONT="]-[/FONT][FONT="]فرم ها از تصدیق اعتبار و تعدد خودکار پشتیبانی می کنند و این باعث تضمین کیفیت خوب داده در دیتابیس و یک تجربه کاربری بهتر میشوند.[/FONT]
[FONT="]-[/FONT][FONT="]خصوصیت مدیریت حافظه نهان (( [/FONT][FONT="]cash[/FONT][FONT="] )) باعث کاهش پهنای باند مصرفی و تعداد مراجعات به سرور می شود.[/FONT]
[FONT="]-[/FONT][FONT="]خصوصیت تصدیق و اعتبار موجب اسانتر شدن ساختن قسمت های محدود شده ی دسترسی می شود و همچنین موجب تسهیل مدیریت امنیت کاربرن می شود.[/FONT]
[FONT="]-[/FONT][FONT="]مسیریابی و [/FONT][FONT="]url[/FONT][FONT="] های هوشمند موجب اسان شدن و دوستانه تر شده ادرس صفحات برای موتور های جستجو می شود.[/FONT]
[FONT="]-[/FONT][FONT="]خصوصیت [/FONT][FONT="]E-mail [/FONT][FONT="]و[/FONT][FONT="] API[/FONT][FONT="] درون ساخته به برنامه ی وب اجازه عبور از فعل و انفعالات معمولی با مرورگر را میدهد.[/FONT]
[FONT="]-[/FONT][FONT="]لیست ها بوسیله صفحه بندی و مرتب سازی و فیلترینگ خودکار ، کاربر پسند تر می شوند.[/FONT]
[FONT="]-[/FONT][FONT="]وجود فاکتور های اضافه شونده ها (( [/FONT][FONT="]plug-in[/FONT][FONT="] )) و [/FONT][FONT="]mixins[/FONT][FONT="] قابلیت توسعه پذیری بالایی را ایجاد می کنند.[/FONT]
[FONT="]-[/FONT][FONT="]فعل و انفعالات اجاکس راحتر انجام میشوند که این خود بخاطر وجود کمک کنندهای خاص این کار است[/FONT]
[FONT="]چه کسی سمفونی را ساخت و چرا؟[/FONT]
[FONT="]اولین شماره از سمفونی توسط بنیان گذار پروژه [/FONT]Fabien Potencier [FONT="]در سال 2005 منتشر شد.[/FONT]
[FONT="]فابین مدیر عامل شرکت [/FONT]Sensio[FONT="] است که به خاطر ایده های نو در گسترش وب یک نیروی فعال فرانسوی در زمینه وب محسوب می شود .[/FONT]
[FONT="]قبل از سال 2003 فابین زمانی رو صرف تحقیق در مورد ابزارهای اپن سورس توسعه وب در زبان [/FONT]php[FONT="] کرد ولی اون هیچ چیزی رو که نیازهاشو بر اورده کند پیدا نکرد ![/FONT]
[FONT="]زمانی که [/FONT]php5[FONT="] منتشر شد ، اون به این نتیجه رسید که ابزارهای موجود به قدر کافی بالغ شدن که بتوان اونها رو در یک فریم ورک با تمام خصوصیات ادغام کرد .[/FONT]
[FONT="]متعاقبا اون یک سال زمان صرف ایجاد هسته ی سمفونی کرد و پایه کاری خودش رو بر روی قالب کاری [/FONT]MVC[FONT="] بنا کرد و اون رو به طرف [/FONT]ORM[FONT="] سوق داد و از کمک کنند های پوسته ی [/FONT]Ruby ON Rails [FONT="]هم استفاده کرد.[/FONT]
[FONT="]فابین اساسا سمفونی رو برای کارهای شرکت خودشون درست کرد تا یک قالب کاری موثر با راههای مشخص و منظم برای انجام سریعتر و موثر تر پروژه ها داشته باشند.[/FONT]
[FONT="]اون باعث میشه پروژه های وب مشهور تر و نتیجه برنامه نیرومند تر و نگه داری ساده تر بشه ، وقتی که از این فریم ورک در سایت لباس فروشی بر پایه تجارت الکترونیک استفاده شد این فریم ورک خودشو تثبیت کرد و از اون به بعد در پروژه های زیادی از اون استفاده شد.[/FONT]
[FONT="]بعد از اینکه از سمفونی به طور موفقیت امیز در چند پروژه استفاده شد ، فابین تصمیم به انتشار اون تحت لیسانس اپن سورس کرد.[/FONT]
[FONT="]فابین این پروژه رو به اجتماع بخشید تا از بازخورد کاربران بهره مند شه و همچنین برای نشان دادن ورزیدگی شرکتش این کارو کرد و همچنین این کارو کرد چون جالب بود![/FONT]
[FONT="]برای اینکه سمفونی یک پروژه موفقیت امیز اپن سورس باشه باید به طور گسترده به زبان انگلیسی مستند سازی میشد . فابین از کارمند دیگه شرکتش [/FONT]François Zaninotto[FONT="] خواست تا بر روی کدها مطالعه کند و یک راهنمای انلاین بنویسد![/FONT]
[FONT="]این کار به راستی که وقت گیر بود ولی وقتی پروژه عمومی شد ، داشتن مستند سازی کافی ، جاذبه ای برای جذب تعداد زیادی طراح شد.[/FONT]
[FONT="]ایا سمفونی برای من است؟[/FONT]
[FONT="]چه شما تازه کار باشید یا یک فرد خبره در [/FONT]php5[FONT="] ، خواهید توانست که از سمفونی استفاده کنید . عامل اصلی در تصمیم گیری در استفاده از سمفونی برای پروژه شما اندازه ی پروژه شماست[/FONT]
[FONT="]اگر شما قصد طراحی یک وب سایت ساده با پنج الی ده صفحه و دسترسی محدود بانک اطلاعاتی دارید و هیچ لزومی ندارد که کارایی اون و مستند سازیشو تضمین کنید باید فقط از [/FONT]php [FONT="]استفاده کنید.[/FONT]
[FONT="]در این حالت شما هیچ سودی از استفاده از یک فریم ورک نمی کنید و استفاده از فریم ورک یا حتی شی ء گرایی و [/FONT]MVC[FONT="] فقط موجب کند شدن چرخه طراحی شما میشود.[/FONT]
[FONT="]یک نکته دیگر هم وجود دارد و ان اینست که سمفونی برای اجرا بر روی هاست های اشتراکی (( [/FONT]shared server[FONT="] )) بهینه سازی نشده است.[/FONT]
[FONT="]از طرف دیگر اگر شما وب سایت های پیچیده طراحی می کنید با یک منطق سنگین تجاری ، [/FONT]php[FONT="] تنها کافی نیست![/FONT]
[FONT="]اگر در اینده قصد نگه داری و توسعه کدهای خود را دارید ، باید کدهای شما کم ، خوانا و تاثیر گذار باشد.[/FONT]
[FONT="]اگر میخواهید امکانات پیشرفته ای را مانند [/FONT]Ajax[FONT="] را در سایتتان به کار ببرید نمی تواند فقط چند صد کد جاوا اسکریپت را بنویسید.[/FONT]
[FONT="]اگر میخواهید سریع طراحی کنیدو لذت ببرید ، [/FONT]php[FONT="] تنها مایوس کننده هست.[/FONT]
[FONT="]در تمام این موارد سمفونی برای شماست[/FONT]
[FONT="]و البته اگر شما یک طراح حرفه ای وب هستید ، ازتمام سودمندی های فریم ورک اگاهید و چیزی که برای شما مهم است مستند سازی خوب و داشتن جامعه کاربری گسترده است . [/FONT]
[FONT="]بیشتر نگردید ، سمفونی چاره مشکلات شماس[/FONT]
[FONT="]خلاصه[/FONT]
[FONT="]سمفونی یک فریم ورک طراحی برنامه های وب بر پایه [/FONT]php5[FONT="] است.[/FONT]
[FONT="]اون یک لایه جدید بر روی [/FONT]php[FONT="] اضافه کرده و با فراهم کردن ابزارهایی موجب تسریع و تسهیل فرایند ایجاد وب سایت های پیچیده میشود.[/FONT]
[FONT="]برای درک اون باید یک ذهنیت ساده از [/FONT]oop[FONT="] یا شی ء گرایی ، [/FONT]ORM[FONT="] یا نگاشت ارتباطات اشیاء و [/FONT]rapid application development (RAD)[FONT="] داشته باشیم.[/FONT]
[FONT="]تنها چیزی که باید به طورفنی از قبل بدانید [/FONT]php[FONT="] است.[/FONT]
[FONT="]قبل از اینکه شما کار کردن با سمفونی را شروع کنید ، شما باید چند مفهوم پایه ای را بدانید و انها عبارت اند از :[/FONT]
OOP , ORM , RAD, DRY , KISS , TDD , YANL , PEAR
آخرین ویرایش: