Your SlideShare is downloading. ×
Introdução a Ruby para Programadores C#
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Introdução a Ruby para Programadores C#

465

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
465
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Transcript

    • 1. Introdução ao Ruby para programadores C#Felipe Limafelipe.lima@gmail.com@felipecsl
    • 2. Linguagens de programação sãoapenas ferramentas
    • 3. Já está claro que C# nãoé a melhor linguagem para Desenvolvimento Web.
    • 4. Por que Ruby?
    • 5. 1. ExpressividadeC#if(myVar
!=
null)
{
 //
do
something} versusRubyunless
my_variable.nil?
 #
do
somethingend
    • 6. 1. ExpressividadeC#if(myVariable
!=
null)
{
 //
use
it}else
{
 throw
new
InvalidOperationException(
 
 “Message”);} versusRubyraise
“Message”
if
my_variable.nil?
    • 7. 2. Gerenciamento de pacotesC#NuGet VersusRubyRubygems
    • 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. 4. Duck TypingC#var
oneHundred
=
100;dynamic
iCan
=
“be
anything!”; versusRubyObject.respond_to?Object.method_missing
    • 10. 5. Web FrameworksC#
• Web
Forms• ASP.NET
MVC versusRuby• Rails• Sinatra
    • 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. 8. Build toolsC# MSBuild? versusRuby Rake
(Ruby
+
Make) 12
    • 13. 7. ComunidadeC# – Anêmica? versusRuby – Ativa
    • 14. 8. Drawbacks•String/File encoding•Performance? 14
    • 15. Perguntas?

    ×