อาทิตย์, กันยายน 05, 2010
   
Font Size

หน้าหลัก - BlackDemon Project!

7 Third Party Control ที่น่าสนใจสำหรับนักพัฒนา dotNet

3rd Party Control คืออะไร?

ก็คือส่วนควบคุม (Controls) ที่ไม่ได้ถูกสร้างมาจากผู้พัฒนาหลัก (Microsoft) โดยตรง แต่ทำงานได้เทียบเท่าหรือดีกว่ากับผลิตภัณฑ์นั้นๆ ในส่วนของฝั่ง .Net เนี่ยก็มีหลากหลายเจ้าที่ทำ Control, ทำ Component ป้อนให้กับ .Net เช่น บริษัท DevExpress, Telerik, Infragistics และอื่นๆอีกมากมายก่ายกอง

3rd Party Control ตัวไหนน่าสนใจที่สุด?

ผมเองก็ไม่มีข้อมูลจริงๆ ของแต่ละตัวหรอกนะครับแต่หากวัดจากผลสำรวจ (Poll) ตามชุมชนหลายๆ ที่ดูเหมือน Devexpress และ Telerik จะได้รับความนิยมเป็นอันแรกๆ เลยทีเดียว

โพลสำรวจความนิยม 3rd Party Control

ปล. โพลจากเว็บด้านมืด ไม่สามารถทำไปใช้อ้างอะไรได้ทั้งนั้นนะครับMoney mouth


3rd Party Control ทำอะไรได้บ้าง?

ช่วยให้เราพัฒนา Application ได้อย่างรวดเร็ว, สวยงามและง่ายดาย โดย Control แต่ละอันจะมีความสามารถเท่ากันหรือมากกว่า Control พื้นฐานของ Microsoft (แหงมล่ะ งั้นเค้าคงไม่ทำออกมาขายหรอก ฮ่าๆ)

เช่นหากเราอยากได้ Toolbar แบบ Ribbon หากต้องมานั่งเสียเวลาพัฒนาเองละก็อาจจะใช้เวลานานโข แต่ถ้าเราใช้ Control พวกนี้อาจจะสร้าง Ribbon ได้ภายในไม่กี่วินาที หรือว่าเบื่อ DataGrid จืดๆของ Windows ซะเหลือเกิน อยากได้ DataGrid ที่สวยงาม, มีความสามารถมากกว่าเดิม, ใส่รูป, ใส่ checkbox, listbox ได้ง่ายๆ หรือต้องการให้ Form สามารถ เปลี่ยน Theme ได้หรือต้องการให้มี Theme สวยงามหยอดย้อยแบบ Glass, Aero หรือ Office2007 Style เพื่อเพิ่มมูลค่าให้ผลิตภัณฑ์ของเรา 3rd Party Control ก็เป็นทางเลือกที่น่าสนใจมาก

แล้วตกลงมันมีอะไรบ้างล่ะไอ้เจ้า 3rd Party Control เนี่ย?

เอาละคุยทั่วไปพอหอมปากหอมคอแล้วไปดูกันดีกว่า ว่ามีอะไรมั่ง...

DevExpress

มีสินค้าครอบคลุมทุกรูปแบบมีทั้งสำหรับ ASP.NET, Winform, WPF, Silverlight แล้ว Devexpress ยังได้รับการตอบรับจากนักพัฒนาที่บอกว่าใช้งานง่ายมาก(สำหรับผมมันก็ยากครือๆกัน -*-) และก็ได้รับรางวัลยอดนิยมและอื่นๆมากมายจากนิตยสารและเว็บนักพัฒนาอีกด้วย(อ้างอิง) ที่สำคัญกว่านั้นคือเจ้านี้ใจป้ำสุดๆ แจก Control ให้ใช้ฟรีมากมายกว่า 60 ตัว อยากลองใช้ตามไปโหลดได้ที่นี่ครับ


dxperience


 

วัดกันเห็นๆ Browser ตัวไหนกินแรมมากที่สุด!

ว่างๆเลยมานั่งจับดูว่า browser ตัวไหนที่กินแรมน้อยหรือมากที่สุด โดยมี bias อยู่แล้วก็คือคิดไว้ว่ากินน้อยที่สุดน่าจะเป็น Chrome กินมากที่สุดน่าจะเป็น IE8

ผู้เข้าแข่งขัน

Internet Explorer 8 รหัส MSIE 8.0; Windows NT 6.1; Trident/4.0;

Google Chorme 3.0.195.21 รหัส AppleWebKit/532.0 (KHTML, like Gecko) Chrome/3.0.195.21 Safari/532.0

Mozilla Firefox 3.5  รหัส  Gecko/20090824 Firefox/3.5.3

Opera 10.0 รหัส Presto/2.2.15 Version/10.00

Safari 4.0 รหัส AppleWebKit/530.17 (KHTML, like Gecko) Version/4.0 Safari/530.17

วิธีทดสอบ: เปิดหน้า DemonCodez.Com แล้วค้างเอาไว้ 15sec (ให้ memoryนิ่ง) แล้วเปิด about:memory ของ Chorme (โครมจึงเสียเปรียบนิดๆเพราะเปิดสองแท็บ)

และผลก็ปรากฎว่า..... แถ่แด็ม

test memory browser


โอเปร่าเอาพุงปลาไปกินซะงั้น ทายถูกอยู่ตัวเดียว IE8 กินจุตามคาดMoney mouth

ปอลอจุด. ผลการทดสอบสอบนี้เป็นการทดสอบที่เอามันส์อย่างเดียวไม่มีมาตราฐง-ตราฐานอะไรทั้งสิ้น ไม่แนะนำให้ทะลึ่งนำไปอ้างอิงใดๆนะจ๊ะ

   

วิธีการย้ายโดเมนของ Joomla - 301 Redirect

เมื่อเร็วๆนี้ได้จดโดเมนใหม่เป็น dotCom พอดีมันลดราคาก็เลยจดซะเลย ได้มาราคา 7$ + private profile ให้ด้วย(ไม่รู้จะไปซ่อนใคร emot01)

ก็เลยต้องมาทำเรื่องย้ายโฮสซักหน่อย ก็เผอิญไอ้เจ้าโดเมนตัวเก่าดันติด index ของ Search Engine ซะเยอะแล้วจะทิ้งไปเฉยๆก็เสียดาย

ถ้า robots เข้ามาเก็บข้อมูลแล้วมองเป็น Duplicate Content จะยิ่งแย่เข้าไปใหญ่ ก็เลยต้องมาทำ 301 Rediect เพื่อที่จะบอก robots ว่าให้เข้าไปเก็บขอมูลที่โดเมนใหม่ได้แล้ว

ส่วนวิธีก็มีหลายแบบครับเริ่มที่

การย้ายโดเมนโดย PHP (PHP 301 Redirect)

 
<?
header( "HTTP/1.1 301 Moved Permanently" );
header( "Status: 301 Moved Permanently" );
header( "Location: http://www.demoncodez-new.com/" );
exit(0); // This is Optional but suggested, to avoid any accidental output
?>


การย้ายโดเมนโดย ASP Classic (ASP 301 Redirect)

 
<%@ Language=VBScript %>
<%
Response.Status="301 Moved Permanently"
Response.AddHeader "Location", "http://www.demoncodez-new.com/"
%>


การย้ายโดเมนโดย ASP.Net (.Net 301 Redirect)

 
<script runat="server">
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.demoncodez-new.com/");
}
</script>


การย้ายโดเมนโดย JSP (JSP 301 Redirect)

 
<%
response.setStatus(301);
response.setHeader( "Location", "http://www.demoncodez-new.com/" );
response.setHeader( "Connection", "close" );
%>


การย้ายโดเมนโดย ใช้ IIS7 (301 Redirect using IIS7)

1. ใน IIS Manager, คลิกขวาที่ไฟล์หรือโฟลเดอร์ที่ต้องการจะย้าย
2. เลือก หัวข้อ "a redirection to a URL".
3. ใส่หน้าที่ต้องการให้ redirect ไป.
4. ติ๊ก "The exact url entered above" และ "A permanent redirection for this resource". ออก
5. กด  'Apply'.


การย้ายโดเมนโดย ใช้ mod_rewrite (mod_rewrite 301 Redirect)

วิธีการนี้ใช้ได้เฉพาะโฮสที่มี mod_rewrite เท่านั้นนะครับ(ส่วนมาก Linux Hosting ก็จะมีกันอยู่แล้ว)

RewriteEngine On
rewritecond %{http_host} ^demoncodez-old
rewriteRule ^(.*) http://www.demoncodez-new.com/$1 [R=301,L]


แต่ถ้าเป็น Joomla จะมีวิธีนิดหน่อยให้ย้ายไปทั้งโดเมนหลักโดยทั้งมี www และไม่มี (http://www.demoncodez.com && http://demoncodez.com)และรวมถึงสิ่งที่อยู่หลัง index.php? อีกด้วยให้พิมพ์ตามนี้เลยครับ

########## Begin - 301 Redirect
RewriteBase /
RewriteCond %{HTTP_HOST} ^demoncodez\.com [NC]
RewriteRule ^(.*)$ http://www.demoncodez.com/$1 [R=301,L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
RewriteRule index\.php$ http://www.demoncodez.com/%1 [R=301,L]
#
RewriteCond %{QUERY_STRING} ^option=com_frontpage&Itemid=1$
RewriteRule ^index\.php$ http://www.demoncodez.com/? [R=301,L]
########## End - 301 Redirect

เท่านี้ก็เป็นอันเรียบร้อยครับ

ขอขอบคุณ stevenhargrove.com สำหรับบทความครับ

   

แนะนำ 12 Captcha ที่น่าสนใจ

วันนี้เรามาพูดถึงการเทคโนโลยีที่ใช้ปกป้องเว็บไซต์จาก spambot กันหน่อยครับนั่นก็คือ CAPTCHA นั่นเองวันนี้จะขอแนะนำ CAPTCHA ที่น่าจับตามองกันนะครับ

TheCAPTCHA

thecaptcha

TheCAPTCHA — สร้างโดยภาษา php ที่แข็งแรง สามารถป้องกันเว็บของเราจาก spambots ทั้งหลายได้. ที่สำคัญคือมันฟรี อีกทั้งยังสามารถแก้ไขดัดแปลงได้ภายใต้สัญญา GNU Lesser General Public License อีกด้วย

เทคโนโลยีที่สนับสนุน: PHP.

Securimage

securimage

Securimage เป็นโอเพ่นซอร์ส โดยสคริปมันจะสร้างรูปที่ค่อนข้างสลับซับซ้อนออกมาป้องกันฟอร์ม(FORM)จากสแปม อีกทั้งยังสามารถเพิ่มเข้าไปในฟอร์มเว็บไซต์ได้อย่างง่ายๆโดยไม่ต้องติดตั้งอะไรเพิ่มเติม, มันสามารถทำงานได้ตลอดเวลาตราบใดที่ยังติดตั้ง PHP ที่รองรับ GD (graphic drawing)อยู่บน server (ถ้าจำไม่ผิดเห็นอยู่บน Wordpress นะ).

เทคโนโลยีที่สนับสนุน: PHP.


ReCAPTCHA

ReCAPTCHA

reCAPTCHA เป็นบริการฟรีจาก recaptcha.net มีผู้บริการมากมายทั้งหนังสือดิจิตอล, หนังสือพิมพ์, หรือวิทยุออนไลน์ต่างๆ ตัวนี้แข็งแกร่งพอสมควรเลยครับแต่ข้อด้อยคือบางครั้งมองไม่ค่อยออกต้อง refresh กันหลายๆรอบ Yell

เทคโนโลยีที่สนับสนุน: PHP.


Tags:
   

วิธีการตรวจสอบว่า URL อยู่ในรูปแบบที่ถูกต้องและใช้งานได้จริงหรือไม่

หลายๆครั้งที่เราต้องการตรวจสอบ URL ว่าอยูในรูปแบบที่ถูกต้องหรือไม่, แล้ว Url นี้จะรู้ได้ไงว่ามีอยู่จริงหรือปล่าว.
ในภาษา C# มีวิธีที่จะตรวจสอบเหตุการณ์พวกนี้โดยใช้เทคนิค Regular Expressions และคลาส HttpStatusCode
ขั้นแรกให้เราตรวจสอบก่อนว่า URL อยู่ในรูปแบบที่ถูกต้องหรือปล่าวให้ใช้โค้ดรูปแบบต่อไปนี้

ในตัวอย่างจะเป็นรูปแบบ form และมี textbox หนึ่งอัน label สองอัน และ button หนึ่งอัน 

 
string strRegex = "^(https?://)"
                + "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" //ตรวจผู้ใช้ (ค่าก่อน@)
                + @"(([0-9]{1,3}\.){3}[0-9]{1,3}" // ตรวจสอบไอพีเช่น  68.168.213.186
                + "|" // เรียกไอพีหรือเรียกโดนเมนเนม
                + @"([0-9a-z_!~*'()-]+\.)*" // ตรวจโดเมนระดับสาม เช่น. www
                + @"([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\." // ตรวจชื่อโดเมนระดับสอง เช่น ซับโดเมน 
                + "[a-z]{2,6})" // ตรวจด้วยชื่อโดเนม และ นามสกุล 
                + "(:[0-9]{1,4})?" // ตรวจพอร์ต
                + "((/?)|" // ตรวจสอบชื่อไฟล์หลัง slash
                + "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$"; //ชื่อและนามสกุลไฟล์หลังแสลช
Regex RgxUrl = new Regex(strRegex);
if (RgxUrl.IsMatch(textBox1.Text))
{
    label1.Text = "รูปแบบ URL: ถูกต้อง..";
}
else
{
    label1.Text = "รูปแบบ URL: ไม่ถูกต้อง!";
}
 

วิธีนี้จะช่วยแยก string ออกมาแล้วตรวจสอบโดยคำสั่ง Regex. วิธีการตรวจสอบนี้ใช้งานได้ดีแต่มีข้อเสียเล็กๆอยู่ข้อหนึ่งก็คือถ้าหาก URL ที่ป้อนเข้าไปดั๊นไม่มี http:// นำหน้ามันทะลึ่งฟ้องว่าถูกต้อง ยกตัวอย่างเช่น www.DemonCodez.Co.Cc ถูก ทั้งๆที่มันควรจะเป็น  http://www.DemonCodez.Co.Cc ต่างหาก. เราสามารถตรวจสอบได้โดยใช้เมธอด IsPrefix() ซึ่งจะทำให้ code นี้สมบรูณ์ยิ่งขึ้น

CompareInfo compare = CultureInfo.InvariantCulture.CompareInfo;
if (compare.IsPrefix(textBox1.Text, "http://") == false)
{
    textBox1.Text = "http://" + textBox1.Text;
}

เพียงแค่นี้โปรแกรมก็จะไม่ฟ้องว่า URL ผิดพลาดถ้า user ลืมใส่ http://, ไม่ยังงั้น user งงตายโหงมาบ่นว่า "กูป้อนถูกแล้วนี่หว่า 'ไรว้าโปรแกรมซังกะบ๊วย" emoticon

วิธีนี้อย่างน้อยก็ดีกว่าที่จะไปโยนให้โปรแกรมมีข้อความเล็กๆว่า "ยูสเซ่อๆ เอ๋ยยูต้องใส่ http:// เข้าไปด้วยนะ" จมหูล่ะน่า เน๊อะ!

เอ้า! ขั้นตอนต่อไปก็นำเอา URL ที่ได้ มาตรวจสอบว่ามีอยู่จริงหรือไม่เราจะใช้คำสั่ง HttpStatusCode สำหรับตรวจสอบ

 
try
{
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(textBox1.Text);

    using (HttpWebResponse respond = (HttpWebResponse)request.GetResponse())
    {
        if (respond.StatusCode == HttpStatusCode.OK)
        {
            label2.Text = "สถานะ URL: ปกติ";
        }
    }
}
catch (WebException demonEx)
{
    label2.Text = "สถานะ URL:" + demonEx.Message;
}
 

แต่อย่างไรก็ตาม โปรแกรมนี้เป็นแค่วิธีง่ายๆสำหรับตรวจสอบเบื้องต้นเท่านั้นอย่าไปหวังอะไรมากมายล่ะครับว่ามันจะไม่มีข้อผิดพลาด

เอาละทีนี้มาดูหน้าตาโปรแกรมกันกันดีกว่า emoticon(ดูรูปได้ในบทความ)

   

หน้า 4 จาก 9

Move
-

Short Articles

Top Headline

เมื่อก่อนผมหวงความเป็นส่วนตัวมากๆ ทั้งๆที่อาจจะไม่สำคัญอะไร แต่ไม่รู้ล่ะ ผมหวงของผมนี่(เกรียนดีมั้ยล่ะ) การใช้งานในผลิตภัณฑ์ต่างๆของ Google ซึ่งก็รู้อยู่แล้วว่า การใช้งานต่างๆมีการตั้งค่าปริยาย(Default) ทำให้ Google มีสิทธิ์เก็บข้อมูลต่างๆ ไม่ว่าจะเป็น - Google...

Read More...

เมื่อวานนี้ (26/11/2009) ทาง Mininova ได้ออกประกาศจำกัดการเผยแพร่เนื้อหา(งดอัพโหลดและลบไฟล์ torrent ออก) อันเป็นผลสืบเนื่องมาจากกรณีคำสั่งของศาลแห่งอูเทรคต์ ประเทศเนเธอแลนด์ เนื่องจากว่าทาง Mininova ไม่สามารถมีระบบที่กรองข้อมูลที่ละเมิดลิขสิทธิ์ได้ 100% ก็เลยต้องจำกัดเนื้อหาและการใช้งานเอาไว้ก่อน...

Read More...

ช่วงนี้ไม่ค่อยมีตังค์ใช้เลย คิดไปมาคิดมา เปิดระบบรับงาน outsource ดีกว่า ถ้าใครผ่านมาเห็นอยากจ้างงานกระผมก็ยินดีรับใช้ครับ ราคาถูกแพงต่อรองกันได้ครับ ดูรายละเอียดเพิ่มเติมได้ที่นี่

Read More...

Polls

มาเจอเว็บนี้ได้ไง

Login Form

Who's Online

เรามี 32 บุคคลทั่วไป ออนไลน์

Advertisement