Milad_Fashi
پنج شنبه 02 مرداد 1393, 01:33 صبح
با سلام به برنامه نویس های عزیز
من میخوام هم برنامه نویس موبایل خوبی باشم.و هم Web developer خوبی باشم.
زبان های C# , C++, JAVA رو بلدم.و ریزه کاری های هر کدوم رو خیلی سریع میتونم یاد بگیرم.کمی هم ASP.net دوران دانشجویی کار کردم(کارشناسی نرم افزار دارم).
برای طراحی وب با CSS۳ و HTML5 و جاوا اسکریپت و jQuery ها آشنایی دارم.
پایگاه داده های Microsoft SQL Server و Sqlite کار کردم.
یه مدت هم با فریم ورک MoSync برای اندروید کد میزدم.Cross-platform بود ولی Performance پایین تری نسبت به Android Native که جاوا باشه داشت.
به نظر شما یه نفر میتونه با روزی ۴ الی ۵ ساعت در روز((منظم و تمام روزهای هفته)) برنامه نویسی بخونه و انجام بده و در هر دو زمینه برنامه نویسی تحت وب و موبایل موفق باشه.یعنی هم Web Developer باشه.و هم Android Developer ؟
فریم ورک هایی که میتونم استفاده کنم اینها هستند :
اولویت اول :
Microsoft Visual Studio and C# language :شک ندارم که ASP.net MVC قدرتمنده و میتونه برای من کار PHP رو انجام بده.حتی شنیدم که Open Source هم هست و از این جهت دیگه PHP برتری متن باز بودنش رو نمیتونه به رخ بکشه .و بهتر از PHP باشه.بدتر نیست. اما با همین ابزار میتوان با استفاده از پروژه مانو (Xamarin) برای موبایل (که شامل اندروید هم میشه) کد نوشت.و خروجی گرفت.اما سوالم اینجاست که Xamarin میتونه به خوبی Java و Eclipse برای اندروید باشه؟؟؟ هسته ی اندروید لینوکس هستش.و برای اینکه کدهای جاوا رو اجرا کنه به ماشین مجازی Dalvic احتیاج داره.Xamarin هم برای اینکه بتونه کدهای C#-Microsoft رو اجرا کنه نیاز به ماشین مجازی Mono داره؟.هردو ماشین مجازی دارند.مگر اینکه از C , C++ استفاده کنید که بدون ماشین مجازی بر روی هسته لینوکس اجرا میشوند. باز سوالم اینه که ماشین مجازی جاوای دالویک رو گوگل در سیستم عامل اندروید خودش قرارداده.برای اجرای برنامه های Xamarin چه طوری ماشین مجازی مانو در سیستم عامل تعبیه میشه!!!! از قبل که ۱۰۰ درصد وجود نداشته.ولی فکر میکنم حقه زامارین برای اجرا سی شارپ بر روی اندروید ماشین مجازی مانو نیست.شاید برنامه دو مرحله تبدیل داره.یک مرحله برای تبدیل کد سی شارپ به کد جاوا.و یک مرحله هم اجرای کد جاوا با ماشین مجازی دالویک.واقعا نمیدونم مسیر تبدیل و اجراش چیه !؟ دوستانی که از نظر فنی این موضوع رو میدونند لطفا توضیح بدن که سی شارپ چگونه در اندروید اجرا میشود؟ و چقدر سی شارپ کندتر از جاوا ست؟ اگر شما تجربه استفاده از هر دو روش رو دارید مقدار این کندی در حد ثانیه است یا صدم ثانیه یا میلی ثانیه ؟ (ناچیزه یا چشم گیره؟)
اولویت دوم :
استفاده از زبان JAVA است.با زبان جاوا میتوان صفحات وب از طریق تکنولوژي JSP طراحی کرد.اما شنیدم مشکل JSP کندی این تکنولوژی است.به دلیل سنگینبودن JSP (بدلیل اجرا کردن Tomcat و راهاندازی ماشین مجازی Java) و همچنین باگهای مداوم Java، عموما کسی به سمت JSP نمیره، غیر از اینکه از قبل با JSP کار میکردند و الان دیگه تغییر سرویسها براشون مشکل باشه.سرورها ای که جاوا رو پشتیبانی کنند گران و کمیابند.ولی در عوض برای برنامه نویسی اندروید بهترین گزینه است. و بدون شک یکه تازه چون توسط طراح سیستم عامل اندروید(گوگل) پیشنهاد شده است.
اولویت سوم :
اصرار نداشتن به استفاده از یک زبان برای هر دو منظور است.مثلا از PHP یا ... برای زبان Server Side صفحات وب استفاده کنم.و حتی زبان های Server side دیگه مثل nodeJS.و برای برنامه نویسی موبایل هم از زبان Native خودش مثل جاوا برای اندروید استفاده کنم.
اما به نظر شما استفاده از زبان های متفاوت و فریم ورک های متفاوت باعث نمیشه که تمرکز کمتری داشته باشم.و به ضررم تموم بشه؟ به نظر خودم استفاده از یک زبان و یک فریم ورک برای هر دو منظور به صرفه تره.خصوصا اینکه من میخوام دو تا تخصص داشته باشم.داشتن دو تخصص ممکنه به ضررم باشه و توی هیچ کدوم تسلط پیدا نکنم.و اگر از دوتا فریم ورک و زبان مختلف استفاده کنم قضیه بیشتر عمق پیدا نمیکنه؟
شایدم توانایی ما آدما بیشتر از این حرف هاست و میتونیم در چند موضوع متفاوت متخصص باشیم.
نظر شما چیه؟
من میخوام هم برنامه نویس موبایل خوبی باشم.و هم Web developer خوبی باشم.
زبان های C# , C++, JAVA رو بلدم.و ریزه کاری های هر کدوم رو خیلی سریع میتونم یاد بگیرم.کمی هم ASP.net دوران دانشجویی کار کردم(کارشناسی نرم افزار دارم).
برای طراحی وب با CSS۳ و HTML5 و جاوا اسکریپت و jQuery ها آشنایی دارم.
پایگاه داده های Microsoft SQL Server و Sqlite کار کردم.
یه مدت هم با فریم ورک MoSync برای اندروید کد میزدم.Cross-platform بود ولی Performance پایین تری نسبت به Android Native که جاوا باشه داشت.
به نظر شما یه نفر میتونه با روزی ۴ الی ۵ ساعت در روز((منظم و تمام روزهای هفته)) برنامه نویسی بخونه و انجام بده و در هر دو زمینه برنامه نویسی تحت وب و موبایل موفق باشه.یعنی هم Web Developer باشه.و هم Android Developer ؟
فریم ورک هایی که میتونم استفاده کنم اینها هستند :
اولویت اول :
Microsoft Visual Studio and C# language :شک ندارم که ASP.net MVC قدرتمنده و میتونه برای من کار PHP رو انجام بده.حتی شنیدم که Open Source هم هست و از این جهت دیگه PHP برتری متن باز بودنش رو نمیتونه به رخ بکشه .و بهتر از PHP باشه.بدتر نیست. اما با همین ابزار میتوان با استفاده از پروژه مانو (Xamarin) برای موبایل (که شامل اندروید هم میشه) کد نوشت.و خروجی گرفت.اما سوالم اینجاست که Xamarin میتونه به خوبی Java و Eclipse برای اندروید باشه؟؟؟ هسته ی اندروید لینوکس هستش.و برای اینکه کدهای جاوا رو اجرا کنه به ماشین مجازی Dalvic احتیاج داره.Xamarin هم برای اینکه بتونه کدهای C#-Microsoft رو اجرا کنه نیاز به ماشین مجازی Mono داره؟.هردو ماشین مجازی دارند.مگر اینکه از C , C++ استفاده کنید که بدون ماشین مجازی بر روی هسته لینوکس اجرا میشوند. باز سوالم اینه که ماشین مجازی جاوای دالویک رو گوگل در سیستم عامل اندروید خودش قرارداده.برای اجرای برنامه های Xamarin چه طوری ماشین مجازی مانو در سیستم عامل تعبیه میشه!!!! از قبل که ۱۰۰ درصد وجود نداشته.ولی فکر میکنم حقه زامارین برای اجرا سی شارپ بر روی اندروید ماشین مجازی مانو نیست.شاید برنامه دو مرحله تبدیل داره.یک مرحله برای تبدیل کد سی شارپ به کد جاوا.و یک مرحله هم اجرای کد جاوا با ماشین مجازی دالویک.واقعا نمیدونم مسیر تبدیل و اجراش چیه !؟ دوستانی که از نظر فنی این موضوع رو میدونند لطفا توضیح بدن که سی شارپ چگونه در اندروید اجرا میشود؟ و چقدر سی شارپ کندتر از جاوا ست؟ اگر شما تجربه استفاده از هر دو روش رو دارید مقدار این کندی در حد ثانیه است یا صدم ثانیه یا میلی ثانیه ؟ (ناچیزه یا چشم گیره؟)
اولویت دوم :
استفاده از زبان JAVA است.با زبان جاوا میتوان صفحات وب از طریق تکنولوژي JSP طراحی کرد.اما شنیدم مشکل JSP کندی این تکنولوژی است.به دلیل سنگینبودن JSP (بدلیل اجرا کردن Tomcat و راهاندازی ماشین مجازی Java) و همچنین باگهای مداوم Java، عموما کسی به سمت JSP نمیره، غیر از اینکه از قبل با JSP کار میکردند و الان دیگه تغییر سرویسها براشون مشکل باشه.سرورها ای که جاوا رو پشتیبانی کنند گران و کمیابند.ولی در عوض برای برنامه نویسی اندروید بهترین گزینه است. و بدون شک یکه تازه چون توسط طراح سیستم عامل اندروید(گوگل) پیشنهاد شده است.
اولویت سوم :
اصرار نداشتن به استفاده از یک زبان برای هر دو منظور است.مثلا از PHP یا ... برای زبان Server Side صفحات وب استفاده کنم.و حتی زبان های Server side دیگه مثل nodeJS.و برای برنامه نویسی موبایل هم از زبان Native خودش مثل جاوا برای اندروید استفاده کنم.
اما به نظر شما استفاده از زبان های متفاوت و فریم ورک های متفاوت باعث نمیشه که تمرکز کمتری داشته باشم.و به ضررم تموم بشه؟ به نظر خودم استفاده از یک زبان و یک فریم ورک برای هر دو منظور به صرفه تره.خصوصا اینکه من میخوام دو تا تخصص داشته باشم.داشتن دو تخصص ممکنه به ضررم باشه و توی هیچ کدوم تسلط پیدا نکنم.و اگر از دوتا فریم ورک و زبان مختلف استفاده کنم قضیه بیشتر عمق پیدا نمیکنه؟
شایدم توانایی ما آدما بیشتر از این حرف هاست و میتونیم در چند موضوع متفاوت متخصص باشیم.
نظر شما چیه؟