Introdução ao Ruby para       programadores C#Felipe Limafelipe.lima@gmail.com@felipecsl
Linguagens de programação sãoapenas ferramentas
Já está claro que C# nãoé a melhor linguagem para  Desenvolvimento Web.
Por que Ruby?
1. ExpressividadeC#if(myVar
!=
null)
{
 //
do
something}                      versusRubyunless
my_variable.nil?
 #
do
some...
1. ExpressividadeC#if(myVariable
!=
null)
{
 //
use
it}else
{
 throw
new
InvalidOperationException(
                      ...
2. Gerenciamento de pacotesC#NuGet              VersusRubyRubygems
3. Meta programaçãoC#Type
calcType
=
Calculator.GetType();object
calcInstance
=
Activator.CreateInstance(calcType);calcTyp...
4. Duck TypingC#var
oneHundred
=
100;dynamic
iCan
=
“be
anything!”;                 versusRubyObject.respond_to?Object.met...
5. Web FrameworksC#
• Web
Forms• ASP.NET
MVC                versusRuby• Rails• Sinatra
6. Templating EnginesC#
ASPX
<p
class=“hey”>Hello,
my
name
is
<%=
myName
%></p>Razor
<p
class=“hey”>
Hello,
my
name
is
@my...
8. Build toolsC#  MSBuild?                       versusRuby  Rake
(Ruby
+
Make)                                12
7. ComunidadeC#  – Anêmica?                versusRuby  – Ativa
8. Drawbacks•String/File encoding•Performance?                        14
Perguntas?
Upcoming SlideShare
Loading in …5
×

Introdução a Ruby para Programadores C#

541
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
541
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Introdução a Ruby para Programadores C#

    1. 1. Introdução ao Ruby para programadores C#Felipe Limafelipe.lima@gmail.com@felipecsl
    2. 2. Linguagens de programação sãoapenas ferramentas
    3. 3. Já está claro que C# nãoé a melhor linguagem para Desenvolvimento Web.
    4. 4. Por que Ruby?
    5. 5. 1. ExpressividadeC#if(myVar
!=
null)
{
 //
do
something} versusRubyunless
my_variable.nil?
 #
do
somethingend
    6. 6. 1. ExpressividadeC#if(myVariable
!=
null)
{
 //
use
it}else
{
 throw
new
InvalidOperationException(
 
 “Message”);} versusRubyraise
“Message”
if
my_variable.nil?
    7. 7. 2. Gerenciamento de pacotesC#NuGet VersusRubyRubygems
    8. 8. 3. Meta programaçãoC#Type
calcType
=
Calculator.GetType();object
calcInstance
=
Activator.CreateInstance(calcType);calcType.InvokeMember(methodName,


 BindingFlags.InvokeMethod
|

BindingFlags.Instance
|
 BindingFlags.Public,
null,
calcInstance,
null); versusRubycontroller.send
method
if
controller.respond_to?
method
    9. 9. 4. Duck TypingC#var
oneHundred
=
100;dynamic
iCan
=
“be
anything!”; versusRubyObject.respond_to?Object.method_missing
    10. 10. 5. Web FrameworksC#
• Web
Forms• ASP.NET
MVC versusRuby• Rails• Sinatra
    11. 11. 6. Templating EnginesC#
ASPX
<p
class=“hey”>Hello,
my
name
is
<%=
myName
%></p>Razor
<p
class=“hey”>
Hello,
my
name
is
@myName</p> versusRubyErb

 <p
class=“hey”>Hello,
my
name
is
<%=
myName
%></p>Haml
p.hey
Hello,
my
name
is
#{myName}Sass
$blue:
#3bbfce;
.nav
{border‐color:
$blue;
color:darken($blue,
9%);}
    12. 12. 8. Build toolsC# MSBuild? versusRuby Rake
(Ruby
+
Make) 12
    13. 13. 7. ComunidadeC# – Anêmica? versusRuby – Ativa
    14. 14. 8. Drawbacks•String/File encoding•Performance? 14
    15. 15. Perguntas?
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×