پروژه ترجمه کتابMicrosoft Application Architecture Guide

by MDP 10. January 2015 01:14

سلام.

چندسال پیش که کتاب Microsoft Application Architecture Guide رو خوندم خیلی برام مفید بود و کلی دید من رو عوض کرد،چند وقتیه که به دلیل پروژه هایی که تو دستم اومده با برنامه نویس ها،مدیر پروژه های زیادی برخورد داشتم که نیازشون به اطلاعاتی مثل اطلاعات این کتاب خیلی مشهود بود.

تصمیم گرفتم که این کتاب رو ترجمه کنم ولی خوب حتمی شما هم میدونید که تنهایی احتمال اتمامش کمه.

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

هر فردی با هر سطح دانشی میتونه کمک کنه.

برای اتمام این پروژه به تعدادی مترجم تخصصی ، چند نفر بازخوان و چند نفر به عنوان ویراستار نیاز هست

امید وارم شما رو در تیم ببینم.

برای عضویت در گروه با من تماس بگیرید :

masoud at daneshpour dot org

Tags:

.Net

چطوری برای ویندوز 8 چیز میز درست کنیم، بفروشیم و لذت ببریم !

by MDP 25. December 2012 16:48

قصد دارم همزمان با آموزش خودم  مطالبی رو که یاد میگیرم هر روز بلاگ کنم.هر روز یک مطلب کوتاه رو به سبگ نوشتاری غیر رسمی مینویسم.شاید که باعث رستگاری شود :)

اول از همه برای توسعه نیازمند یه سیستم عامل خوب هستیم.چی میتونه بهتر از خود ویندوز 8 باشه.اگر دوست دارید خیلی بهتر هم بشه کافیه 100 هزارتومن خرج کنید و لایسنس معتبر professional رو بخرید و راحت به کارتون ادامه بدید و دیگه نگران developer license هم نباشید.developer license دیگه چیه ؟ شما برای تولید یه نرم افزار باید حتمی Developer license رو داشته باشید تا نرم افزارتون در  Store ماکروسافت بتونه ثبت بشه.اگر ویندوز 8 داشته باشید کافیه که مراحل زیر رو طی کنید و به راحتی یه لایسنس خوب و راحت و 30 روزه بگیرید.بله لایسنس های ماکروسافت مدت دار هستند و شما باید هر 30 روز آون ها رو بروز رسانی کنید :

1.        دکمه استارت رو بزنید و تایپ کنید : Windows Powershell .

2.        برنامه رو تحت مجوز Administrator اجرا کنید.

3.        دستور "Show-WindowsDeveloperLicenseRegistration" رو تایپ کنید.

4.        مشخصات اکانت ماکروسافتتون رو وارد کنید.

5.        پیغامی نمایش داده میشه که مدت لایسنس شما و تاریخ اتمامش رو به شما اطلاع میده.

اطلاعات بیشتری لازم دارید ؟ به اینجا سر بزنید .

دومین چیزی که نیاز دارید ابزار توسعه هست.به چه چیزی فکر میکنید ؟ بله درسته  Visual Studio 2012 اونم به صورت رایگان !

قسمت قشنگ ماجرا اینجاست که شما ب��ای توسعه لازم نیست حتمی یه ماکروسافت زامبی یا یه همچین چیزی باشید حتی میتونید یه اپل زامبی باشید و با JavaScript  و HTML برای ویندوز 8 نرم افزار توسعه بدید و حتی اگر ماکروسافتی هستید حتمی از .Net  سردرمیارید و باید بگم شما همچین یه قدمی جلو ترید.

آخرین چیزهایی که لازم دارید یکیش یه ایده جالبه، دومیش یکم پشتکاره انتظاری ندارید که همینطوری یه چیزی تولید شه !

 

منتظر بخش بعدی باشید، قراره بریم سر بخش توسعه !

Tags: , ,

.Net | Windows 8

استفاده از متد سازنده دوم پارامتر T در کلاس های Generic

by MDP 11. February 2012 02:00

 

کلاس های Generic کلاس هایی هستند که در حقیقت PlaceHolder هایی هستند که با توجه به آرگمان ورودی فعالیت هایی متناسب با اون نوع متغییر رو انجام میدن.

کلاس های Generic در ورژن های جدید .Net انقلاب بزرگی رو به وجود آوردند.

کلاس هایی مثل IList<T> ، Func<T,T>  و ... مثال هایی از این نوع  هستند.

 

کلاس های Generic برای محدود کردن ورودی هاشون از مکانیزم جالبی استفاده کنند.

شما در جلوی اسم کلاس میتونید محدودیت هایی رو برای ورودی ها در نظر بگیرید.برای درک بیشتر به مثال زیر توجه کنید :

public interface IEntity
    {
        Guid Guid { get; set; }
    }

    public class User : IEntity
    {
        public Guid Guid
        { get; set; }
        // . . .
    }

    public class Department
    {
        // . . . 
    }

    public class MyGenericClass<T>
        where T : IEntity, new()
    {
        public T MyTType { get; set; }  
        public MyGenericClass()
        {
            MyTType = new T();
        }
    }

من کلاس MyGenericClass را محدود به استفاده از نوعی از ورودی کردم که فقط Interface ای به نام IEntity را پیاده سازی کرده باشد و حتمی متد سازنده داشته باشد.

تا اینجا همه چیز خوب انجام شده است ، اگر به متد سازنده کلاس MyGenericClass  دقت کنید متوجه می شید که من یه متغیر از نوع ورودی را بدون اینکه به طور دقیق از ورودی اطلاعای داشته باشم ساخته ام.

ولی اگر من لازم داشته باشم به T برای ساخته شدن آرگمان پاس بدهم چی ؟ 

متاسفانه کلاس های Generic تنها امکانی که در اختیار برنامه نویس قرار می دهند فقط فهمیدن این نکته است که T حتمی قابلیت وحله سازی دارد.

ولی راه حل چیست ؟

راه حل استفاده از Activator ها است.

برای حل مشکل فوق راه زیر به خوبی کار خواهد کرد :

public class User : IEntity
    {

        public User (int id)
        {
            
        }

        public Guid Guid
        { get; set; }
        // . . .
    }

    public class MyGenericClass<T>
        where T : IEntity, new()
    {
        public T MyTType { get; set; }  
        public MyGenericClass()
        {
            MyTType = new T();
        }

        public MyGenericClass(int id)
        {
            MyTType = (T)Activator.CreateInstance(typeof (T), id);
        }
    }

نکته : Activator ها Performance خوبی ندارند تا جایی که می توانید از روش هایی استفاده کنید که نیازی به استفاده از این روش نباشد.

 

Tags: , , ,

.Net

استفاده از var بجای تعریف صریح

by MDP 28. November 2011 15:13

مطلبی رو جایی خوندم در مورد اینکه استفاده از var بجای تعریف صریح بهتره.از نظر سرعت تفاوتی نداره و در خوانایی هم بهتره !!!

جالب تر اینکه هیچ تغییری در روال انجام کار نداره و overhead ای به سیستم وارد نمی کنه.

برای اطمینان بیشتر خودم تست کردم و کد IL هم دقیقا یکی بود.

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

در آخر هم توی Twitter سوالم رو مطرح کردم و سهیل( مدیر سایت IDevcenter ) هم همین نظر رو داشت :

 

 

Tags: ,

.Net

ابزار های من برای کار

by MDP 12. November 2011 12:30

معمولا برنامه نویس ها و توسعه دهنده ها برای کار های روزانه خودشون ،از یک سری ابزار استفاده می کنن که بهشون عادت دارن.

ایده ای به ذهنم رسید که از همکارام درخواست کنم ابزار هایی که ازش به طور روزمره استفاده می کنن رو معرفی کنن، این طوری اگر ابزار بهتری برای کار وجود داشته باشه به راحتی می تونیم اونو پیدا کنیم.

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

ابزار های من :

ابزار های برنامه نویسی :

VS 2010 :

این ابزار نیاز مسلم هر برنامه نویسی .Net هست که همه به خوبی اون میشناسیم و از قابلیت هاش آگاهیم

MS SQL Server 2008 :

این ابزار هم که نیازی به معرفی نداره و همه ما اونو میشناسیم.

 

ابزار های کمک برنامه نویسی :

ReSharper :

یک محصول فوقالعاده از شرکت jetbrains.

{ اگه دنبال کرک نسخ 6 هستید به اینجا یک سری بزنید }

 

ابزار های مدل سازی :

Enterprise Architect

یک محصول قوی از شرکت sparxsystems.

این ابزار با قابلیت های بالایی که در رسم و مدل سازی انواع نمودار های UML  و کلا مدلینگ داره یکی از بهترین گزینه ها برای مدل سازی هست.در رابطه به ea آقای حاجی لو هم در وبلاگشون مطلب کاملی نوشتن که می تونید مطالعه کنید

این ابزار به علت پشتیبانی از زبان فارسی یکی از اولین انتخاب هاست.

 

ابزارهای کنترل سورس :

VS TFS { wiki }:

البته TFS فقط یک Source Control نیست و قابلیت های زیادی داره ولی بهترین انتخاب برای تیم هایی که به طور گسترده فعالیت میکنن هست.

TFS حتی یک بخش به نام Web Access داره که به کاربرا اجازه میده که سورس ها رو داخل محیط وب ( شبیه چیزی که در Codeplex هست ( ببینیم.

TFS به دلیل اینکه یکپارچگیه بسیار بالایی با VS 2010 داره اولین انتخاتب من بوده و هست.

TFS حتی میتونه به CRM ماکروسافت هم خط وصل بشه و کلی Functionality های خوبی رو به تیم بده.

آقای افشار محبی هم مطالبی در ضمینه TFS دارن که خوندشون خالی از لطف نیست.

 

مطلب فوق رو من در طول زمان تکمیل میکنم و نرم افزارهای جدیدی بهش اضافه می کنم.

Tags: , , , , , ,

.Net | Work

My Groups

Poll

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



Show Results

Month List