نظرات مطالب
انجمن سایت LLBLGEN سورس باز شد
سلام،
تقریبا بله!
- طول عمر آن از EF بیشتر است.
- رابط گرافیکی تولید نگاشت‌های آن از EF و نمونه‌ی موجود در VS.NET بسیار بهتر و پایدارتر است.
- پشتیبانی بهتری از انواع بانک‌های اطلاعاتی دارد.
- code generator دارد.
- پشتیبانی کاملی از LINQ دارد.
و ...

ولی باز هم من ترجیح می‌دم سراغ راه‌حل‌های تجاری غیرمایکروسافتی نروم. حداقل می‌دونم مایکروسافت تا 10 سال دیگر هست. چندتا کتاب در مورد هر کدام از فریم ورک‌هاش موجود است، انواع و اقسام بلاگ‌ها، فوروم‌ها و غیره برای آن هست که قابل چشم پوشی نیست.

برای مطالعه بیشتر :
(+),(+)
نظرات مطالب
مقایسه امنیت Oracle11g و SQL server 2008 از دید آمار در سال 2009
- این آمار فقط بر اساس تعداد وصله‌های ارائه شده است نه بر اساس تعداد پروژه‌ها یا تعداد سرورها و غیره.
- کسانی که در این زمینه فعالیت می‌کنند و از محصولات باگ در می‌آورند عموما در شرکت‌های امنیتی کاری به سرورهای شما یا پروژه‌های شما ندارند. مطالعات و مهندسی معکوس خودشون رو در آزمایشگاه‌های مجازی تهیه شده انجام می‌دن.
- علت استقبال از اوراکل در یک سری از شرکت‌ها داشتن نسخه‌ی لینوکسی آن است.

مایکروسافت مقایسه‌ای رو بین آخرین نگارش‌های این محصولات اینجا انجام داده که فارق از شرکت تهیه کننده آن آمارهای جالبی را ارائه می‌دهد:
http://www.microsoft.com/sqlserver/2008/en/us/compare-oracle.aspx
نظرات مطالب
آشنایی با NHibernate - قسمت دوم
سلام
- ضمن تشکر از لطف شما، بنده استاد نیستم. یک سری مطلب رو از این طرف اون طرف پیدا می‌کنم و با هم تقسیم می‌کنیم. فقط همین و لطفا این لفظ رو دیگر بکار نبرید.
- خیر. می‌شد برای آزمایش یک برنامه کنسول هم نوشت. اما دیگر مرسوم نیست. بجای استفاده از یک برنامه کنسول، آزمایش واحد بنویسید. هم روشی است استاندارد، هم به عنوان مستندات نحوه استفاده از متدهای پروژه می‌تونه مورد استفاده قرار بگیره، هم سبب میشه کد بهتری بنویسید چون مجبور خواهید شد در هم تنیدگی کدهای خودتون رو برای متد تست نوشتن کمتر کنید و هم .... در مقالات مربوطه (تگ unit test سمت راست صفحه) مابقی مزایا، نحوه تولید استفاده و غیره را لطفا مطالعه کنید.
نظرات مطالب
معرفی ELMAH
خلاصه بحث ارسال ایمیل:
- امکان ندارد هاست شما برای ارسال ایمیل نیاز به smtp authentication نداشته باشد (من ندیدم). بنابراین یا این اطلاعات را باید زنگ بزنید و از هاست بگیرید یا در کنترل پنل ایمیل‌های سایت یک یوزر مخصوص را درست کنید تا بشود در برنامه از آن استفاده کرد.
- سپس تگ errorMail باید دقیقا مقدار دهی شود. آدرس و نام کاربری و غیره. (این موارد مرتبط به ارسال ایمیل است و با نام کاربری مثلا ftp سایت متفاوت می‌باشد)
- در IIS6 : باید در قسمت system.web -- httpModules ، مطابق مثال web.config پوشه sample کتابخانه، قسمت Elmah.ErrorMailModule را از کامنت خارج کنید.
- در IIS7 : باید در قسمت system.webServer فایل web.config شما Elmah.ErrorMailModule نیز مطابق مثال یاد شده ، ذکر شده باشد.
نظرات مطالب
خواندنی‌های 9 اردیبهشت
تولید کننده‌های unit test روش غلطی از دیدگاه تئوری محسوب می‌شوند چون کلا test driven development به معنای اول نوشتن تست و بعد برنامه نویسی است.
تولید خودکار متدهای تست از روی کدهای موجود می‌تونه بر اساس یک متد باگ دار هم تولید بشه که نهایتا نتیجه جالبی را برای شما تولید نخواهد کرد.
و کلا این دیدگاه که کدوم بهتره، این یا اون و غیره رو کنار بگذارید. یک فریم ورک تست را پیدا کنید و با آن ادامه بدهید. هدف نوشتن تست است. این فریم ورک‌ها حداکثر چند قابلیت بیشتر یا کمتر دارند.
نظرات مطالب
Contact me
متاسفانه این دلیل عمده‌ای است که کمتر کتاب با کیفیت کامپیوتری فارسی رو می‌تونید پیدا کنید که حاصل تحقیق برای مثال 6 ماه (یا بیشتر) یک شخص باشد. عمدتا کتاب‌های برنامه نویسی در سه سوت و خودآموز در 5 روز و غیره که به نظر قسمتی از آن ترجمه‌ی ماشینی است و قسمتی هم ادیت دستی برای تولید انبوه سریعتر.
تا زمانی که نشود به عنوان یک شغل به آن نگاه کرد و به صورت اقساطی بعد از 6 ماه از تاریخ انتشار کتاب آن هم به میزان 9 تا 10 درصد پشت جلد را به شما بدهند ... کیفیت بازار نشر تخصصی ما به همین صورت خواهد بود.
مطالب
منسوخ شده‌ها در دات نت 4

برای کاهش حجم دات نت در نگارش‌های بعدی، کلاس‌هایی که توسط تیم‌های مختلف پیشتر توسعه یافته بودند، اکنون با هم تلفیق شده و نظم بهتری پیدا کرده‌اند. برای مثال کلیه کلاس‌های مرتبط با زبان‌های اسکریپتی اکنون به فضای نام System.CodeDom.Compiler.ICodeCompiler منتقل شده‌اند و غیره. مرجع نسبتا مفصلی در مورد منسوخ شده‌ها در دات نت 4 اخیرا منتشر شده است:

و حتما می‌دانید که چگونه یک متد یا نوع را باید به صورت منسوخ شده معرفی کرد:

در این حالت هنگام کامپایل برنامه، پیغام اخطاری توسط کامپایلر صادر خواهد شد.

مطالب
تعیین اعتبار ورودی Int64 یا بزرگتر در ASP.Net

کنترل range validator در ASP.net امکان کنترل ورودی از نوع Int32 ، double‌ و غیره را فراهم می‌کند. اما اگر کاربر حتما باید عددی صحیح را وارد کرده و این عدد از بازه‌ی اعداد Int32 خارج بود (مثلا اعداد Int64 یا حتی بزرگتر) این کنترل کاربرد خود را از دست می‌دهد.
در این حالت بجای استفاده از کنترل range validaotr می‌شود از RegularExpressionValidator معروف به صورت زیر استفاده کرد:

<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="RegularExpressionValidator"
SetFocusOnError="True" ValidationExpression="\d+"></asp:RegularExpressionValidator>

در این‌جا ValidationExpression آن عبارت باقاعده‌ای است که ورودی‌هایی را متشکل از رشته‌ای حاوی یک یا چند عدد، مجاز اعلام خواهد کرد (و در این حالت مشکلی برای تعیین اعتبار اعداد صحیح بزرگ وجود نخواهد داشت).


مطالب
اصلاح شیوه نامگذاری در ReSharper

یکی از روش‌های متداول نام گذاری متدها در سی شارپ به این صورت است که متدهای خصوصی با حروف کوچک شروع شوند یا lower camel case و متدهای عمومی با حرف بزرگ.
ReSharper 4.5 که جزو ابزارهای واجب کاری است، گزینه Naming style را نیز اضافه کرده و اگر شما از اصول نامگذاری متدها، کلاس‌ها ، متغیرها و غیره پیروی نکنید، علایم راهنمایی را به شما ارائه خواهد کرد. در این نگارش تمامی متدها به یک صورت در نظر گرفته می‌شوند: Upper camel case .



برای اصلاح آن می‌توان به برگه گزینه‌های آن مراجعه کرده و در قسمت naming style بر روی دکمه add مربوط به user defined naming rules کلیک و تغییر زیر را اعمال نمود:



پس از اعمال آن اگر یک متد خصوصی را با حرف بزرگ شروع کنید، تصویر زیر نمایش داده خواهد شد:





پاسخ به بازخورد‌های پروژه‌ها
درخواست مستندات
- این کتابخانه، یک کتابخانه‌ی code first هست. به عمد چنین روشی (تهیه فایل XML و مانند آن) را انتخاب نکردم چون با کدنویسی قدرت انعطاف و سرعت بیشتری وجود دارد. از امکان تغییر پویای خروجی با متدهایی که برنامه نویس بدون نیاز به یادگرفتن زبان دیگری می‌تواند به آن‌ها برسد، تا تغییر رنگ و فونت سلول‌ها بر اساس ورودیهای متغیر تا تهیه سلول‌های سفارشی، متدهای aggregate کاملا سفارشی شده، امکان تهیه دیتاسورس‌های سفارشی و غیره.
- مستندات کلی PdfReport شامل موارد ذیل هستند:
الف) FAQ آن
ب) مقالات منتشر شده در سایت
ج) مجموعه مثال‌های آن