Ironruby Shines in New .NET Development Tool

Total Page:16

File Type:pdf, Size:1020Kb

Ironruby Shines in New .NET Development Tool Microsoft .NET Customer Solution Case Study IronRuby Shines in New .NET Development Tool Overview “Ruby developers can now access the enterprise-level Country or Region: Australia Industry: Software development features of the .NET environment such as managed code and standard APIs, which allow them to develop Developer Profile Software developer James Crisp is a software once and then run it anywhere.” Senior Consultant and the .NET Lead at Nick Hodge, Professional Geek, Microsoft Australia the Sydney, Australia office of global IT consultancy ThoughtWorks. Software developer James Crisp was looking for a way to Business Situation automate software builds while working in Microsoft Visual Crisp wanted to automate software Studio and the .NET Framework, but he found existing XML- builds while working in Microsoft Visual Studio and the .NET Framework, based build tools inflexible and hard to scale for some of his but found existing XML-based build larger projects. He decided to create nRake – a .NET-compatible tools inflexible and hard to scale. version of Rake which is a popular build tool based on the Ruby Solution programming language. Using IronRuby – Microsoft’s Crisp developed a build tool called nRake, which uses IronRuby, a implementation of Ruby for the .NET environment – helped Microsoft implementation of the Crisp take advantage of Ruby’s intelligence and versatility, popular Ruby programming language. allowing software builds to be specified in a way that was easier Benefits to understand and more scalable. IronRuby helps connect the • nRake makes software builds easier to specify and more scalable. open source and Microsoft development communities, making it • Developers have a more powerful easier for Ruby developers to use .NET’s enterprise-class .NET development tool. • IronRuby helps bring Microsoft capabilities, while giving .NET developers access to a popular development technologies to the and powerful programming language. open source community. “Ruby is very popular Situation Nick Hodge, Professional Geek at Software developer James Crisp is a Microsoft Australia. “You can generate a with developers, Senior Consultant and the .NET Lead at domain-specific language to describe the Sydney, Australia office of something like a software build in a way especially in the open ThoughtWorks, a global IT consultancy. that makes sense and is easy for both source world; however, ThoughtWorks develops custom humans and computers to read. applications and provides consulting and many large business and training services, with expertise in Agile “Ruby is very popular with developers, and Lean development principles. Crisp especially in the open source world. government customers has worked in software development, IT However, many large business and only want their software architecture and consulting for more government customers only want their than a decade. software developed in what they see as developed in what they enterprise-class environments, which A core part of the Agile methodology is means either .NET or Java.” see as enterprise-class iterative and incremental development. environments, which As a result, it is important to have a consistent and easily replicated process Solution means either .NET or for building software from its various In 2009, Crisp started work on nRake – a code components – a task that is complete package for .NET builds using Java.” performed many times daily by all Rake. His objective was to make the Nick Hodge, Microsoft Australia. developers and automated build servers. capabilities of Rake readily available to .NET developers. Developers working in Microsoft’s Visual Studio environment typically use build “I had some time between clients so I tools such as Microsoft’s MSBuild – part started putting it together,” says Crisp. of the .NET Framework – or open source “nRake is based on a ‘batteries included’ tools such as NAnt. These tools use XML philosophy – you don’t need any (extensible markup language) to define additional libraries or downloads, and all build components and processes. For the plumbing work has been done for Crisp, these tools lacked flexibility. you. It can help you get up and running very quickly on a new project and “Once you get up to a fairly high level of provides a strong and flexible build complexity, these XML structures scripting environment, which you can become quite difficult to maintain and extend to suit your needs.” extend,” says Crisp. nRake includes a template C# project In 2008, Crisp became interested in using with unit tests, IronRuby, the Rake build Rake – an open source software build tool, the Rake Albacore gem, a default tool that uses the Ruby programming Rakefile build, templated configurations language rather than XML to define for different environments, software builds. This enables developers configurations for automated build to use the full power of an advanced servers and the open-source NUnit object oriented scripting language to software testing tool. write your builds. “IronRuby is an implementation of Ruby “Ruby has the ability to almost transform for the .NET Framework, which Microsoft itself into another language,” explains announced in 2007 and launched in “Using IronRuby, your 2008,” says Crisp. “The first version of .NET environment,” says Crisp. “One nRake used Ruby 1.9. About six months Sydney digital advertising and product build script can talk later, the performance and start up time development house I have spoken to is of IronRuby was comparable to Ruby 1.9, already using nRake.” directly to the .NET code. so I moved nRake over to IronRuby.” So, for example, you can Integration between Microsoft and Says Hodge: “A lot of the developers open source technologies directly call .NET code working in Ruby are in the Linux, UNIX nRake and a range of other projects and Mac OS worlds, but there are also using IronRuby have demonstrated how and libraries from build plenty of advanced developers in the Microsoft and open source technologies tasks.” Microsoft environment who really like can connect. Ruby. IronRuby gives Microsoft James Crisp, Senior Consultant and .NET developers the best of both worlds – the “IronRuby brings the power and flexibility Lead, ThoughtWorks flexibility of Ruby and the power of the of Ruby to developers who are more .NET environment.” familiar with the .NET environment,” says Hodge. “At the same time, developers who are comfortable working with Ruby Benefits can now access the enterprise-level A powerful automation tool for features of the .NET environment such as developers managed code and standard APIs, which IronRuby has helped Crisp make nRake a allow them to develop software once and valuable automation tool for developers then run it anywhere – a desktop, mobile working on large-scale .NET device, server or in the cloud.” development projects, especially when using the Agile methodology. According to Robert Evans, Platform Strategy Lead, Microsoft Australia, “Using IronRuby, your build script can IronRuby is an example of Microsoft’s talk directly to the .NET code,” says Crisp. commitment to supporting developers “So, for example, you can directly call and working with a wider range of non- .NET code and libraries from build tasks, Microsoft technologies, including open something which is not possible using source software. Ruby 1.9. “The open source community and the “Using IronRuby means that the nRake Microsoft developer community have download is smaller and faster than traditionally been at odds but IronRuby using Ruby 1.9. Using IronRuby also and similar projects are helping to bring makes nRake an attractive option for them together,” he says. companies which focus on Microsoft technologies.” “In addition, Microsoft gets to give back to the community by releasing source As a result, nRake has quickly gained code and contributing to open source international attention. projects.” “I’ve received a lot of interest from the ALT.NET community – a worldwide group of developers who are interested in ways of combining open source tools with the For More Information Microsoft .NET For more information about IronRuby, Microsoft .NET is software that connects please visit the website at: people, information, systems, and http://www.ironruby.net/ devices through the use of Web services. Web services are a combination of To learn more about and download protocols that enable computers to work nRake, please visit the website at: together by exchanging messages. Web http://github.com/jcrisp/nRake services are based on the standard protocols of XML, SOAP, and WSDL, which allow them to interoperate across platforms and programming languages. .NET is integrated across Microsoft products and services, providing the ability to quickly build, deploy, manage, and use connected, secure solutions with Web services. These solutions provide agile business integration and the promise of information anytime, anywhere, on any device. For more information about Microsoft .NET and Web services, please visit these websites: www.microsoft.com/net msdn.microsoft.com/webservices Software and Services • Microsoft Visual Studio .NET 2003-2010 • nRake • Iron Ruby This case study is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY. Document published October 2010 .
Recommended publications
  • Ironpython in Action
    IronPytho IN ACTION Michael J. Foord Christian Muirhead FOREWORD BY JIM HUGUNIN MANNING IronPython in Action Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> IronPython in Action MICHAEL J. FOORD CHRISTIAN MUIRHEAD MANNING Greenwich (74° w. long.) Download at Boykma.Com Licensed to Deborah Christiansen <[email protected]> For online information and ordering of this and other Manning books, please visit www.manning.com. The publisher offers discounts on this book when ordered in quantity. For more information, please contact Special Sales Department Manning Publications Co. Sound View Court 3B fax: (609) 877-8256 Greenwich, CT 06830 email: [email protected] ©2009 by Manning Publications Co. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, photocopying, or otherwise, without prior written permission of the publisher. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in the book, and Manning Publications was aware of a trademark claim, the designations have been printed in initial caps or all caps. Recognizing the importance of preserving what has been written, it is Manning’s policy to have the books we publish printed on acid-free paper, and we exert our best efforts to that end. Recognizing also our responsibility to conserve the resources of our planet, Manning books are printed on paper that is at least 15% recycled and processed without the use of elemental chlorine.
    [Show full text]
  • Introducing Visual Studio 2010
    INTRODUCING VISUAL STUDIO 2010 DAVID CHAPPELL MAY 2010 SPONSORED BY MICROSOFT CONTENTS Tools and Modern Software Development ............................................................................................ 3 Understanding Visual Studio 2010 ........................................................................................................ 3 The Components of Visual Studio 2010 ................................................................................................... 4 A Closer Look at Team Foundation Server............................................................................................... 5 Work Item Tracking ............................................................................................................................. 7 Version Control .................................................................................................................................... 8 Build Management: Team Foundation Build ...................................................................................... 9 Reporting and Dashboards.................................................................................................................. 9 Using Visual Studio 2010 ..................................................................................................................... 12 Managing Requirements ....................................................................................................................... 12 Architecting a Solution .........................................................................................................................
    [Show full text]
  • Visual Studio 2010 Tools for Sharepoint Development
    Visual Studio 2010 for SharePoint Open XML and Content Controls COLUMNS Toolbox Visual Studio 2010 Tools for User Interfaces, Podcasts, Object-Relational Mappings SharePoint Development and More Steve Fox page 44 Scott Mitchell page 9 CLR Inside Out Profi ling the .NET Garbage- Collected Heap Subramanian Ramaswamy & Vance Morrison page 13 Event Tracing Event Tracing for Windows Basic Instincts Collection and Array Initializers in Visual Basic 2010 Generating Documents from SharePoint Using Open XML Adrian Spotty Bowles page 20 Content Controls Data Points Eric White page 52 Data Validation with Silverlight 3 and the DataForm John Papa page 30 Cutting Edge Data Binding in ASP.NET AJAX 4.0 Dino Esposito page 36 Patterns in Practice Functional Programming Core Instrumentation Events in Windows 7, Part 2 for Everyday .NET Developers MSDN Magazine Dr. Insung Park & Alex Bendetov page 60 Jeremy Miller page 68 Service Station Building RESTful Clients THIS MONTH at msdn.microsoft.com/magazine: Jon Flanders page 76 CONTRACT-FIRST WEB SERVICES: Schema-Based Development Foundations with Windows Communication Foundation Routers in the Service Bus Christian Weyer & Buddihke de Silva Juval Lowy page 82 TEST RUN: Partial Anitrandom String Testing Concurrent Affairs James McCaffrey Four Ways to Use the Concurrency TEAM SYSTEM: Customizing Work Items Runtime in Your C++ Projects Rick Molloy page 90 OCTOBER Brian A. Randell USABILITY IN PRACTICE: Getting Inside Your Users’ Heads 2009 Charles B. Kreitzberg & Ambrose Little Vol 24 No 10 Vol OCTOBER 2009 VOL 24 NO 10 OCTOBER 2009 VOLUME 24 NUMBER 10 LUCINDA ROWLEY Director EDITORIAL: [email protected] HOWARD DIERKING Editor-in-Chief WEB SITE MICHAEL RICHTER Webmaster CONTRIBUTING EDITORS Don Box, Keith Brown, Dino Esposito, Juval Lowy, Dr.
    [Show full text]
  • Teamcity 7.1 Documentation.Pdf
    1. TeamCity Documentation . 4 1.1 What's New in TeamCity 7.1 . 5 1.2 What's New in TeamCity 7.0 . 14 1.3 Getting Started . 26 1.4 Concepts . 30 1.4.1 Agent Home Directory . 31 1.4.2 Agent Requirements . 32 1.4.3 Agent Work Directory . 32 1.4.4 Authentication Scheme . 33 1.4.5 Build Agent . 33 1.4.6 Build Artifact . 34 1.4.7 Build Chain . 35 1.4.8 Build Checkout Directory . 36 1.4.9 Build Configuration . 37 1.4.10 Build Configuration Template . 38 1.4.11 Build Grid . 39 1.4.12 Build History . 40 1.4.13 Build Log . 40 1.4.14 Build Number . 40 1.4.15 Build Queue . 40 1.4.16 Build Runner . 41 1.4.17 Build State . 41 1.4.18 Build Tag . 42 1.4.19 Build Working Directory . 43 1.4.20 Change . 43 1.4.21 Change State . 43 1.4.22 Clean Checkout . 44 1.4.23 Clean-Up . 45 1.4.24 Code Coverage . 46 1.4.25 Code Duplicates . 47 1.4.26 Code Inspection . 47 1.4.27 Continuous Integration . 47 1.4.28 Dependent Build . 47 1.4.29 Difference Viewer . 49 1.4.30 Guest User . 50 1.4.31 History Build . 51 1.4.32 Notifier . 51 1.4.33 Personal Build . 52 1.4.34 Pinned Build . 52 1.4.35 Pre-Tested (Delayed) Commit . 52 1.4.36 Project . 53 1.4.37 Remote Run . ..
    [Show full text]
  • Q1 Where Do You Use C++? (Select All That Apply)
    2021 Annual C++ Developer Survey "Lite" Q1 Where do you use C++? (select all that apply) Answered: 1,870 Skipped: 3 At work At school In personal time, for ho... 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES RESPONSES At work 88.29% 1,651 At school 9.79% 183 In personal time, for hobby projects or to try new things 73.74% 1,379 Total Respondents: 1,870 1 / 35 2021 Annual C++ Developer Survey "Lite" Q2 How many years of programming experience do you have in C++ specifically? Answered: 1,869 Skipped: 4 1-2 years 3-5 years 6-10 years 10-20 years >20 years 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES RESPONSES 1-2 years 7.60% 142 3-5 years 20.60% 385 6-10 years 20.71% 387 10-20 years 30.02% 561 >20 years 21.08% 394 TOTAL 1,869 2 / 35 2021 Annual C++ Developer Survey "Lite" Q3 How many years of programming experience do you have overall (all languages)? Answered: 1,865 Skipped: 8 1-2 years 3-5 years 6-10 years 10-20 years >20 years 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% ANSWER CHOICES RESPONSES 1-2 years 1.02% 19 3-5 years 12.17% 227 6-10 years 22.68% 423 10-20 years 29.71% 554 >20 years 34.42% 642 TOTAL 1,865 3 / 35 2021 Annual C++ Developer Survey "Lite" Q4 What types of projects do you work on? (select all that apply) Answered: 1,861 Skipped: 12 Gaming (e.g., console and..
    [Show full text]
  • Programming with Windows Forms
    A P P E N D I X A ■ ■ ■ Programming with Windows Forms Since the release of the .NET platform (circa 2001), the base class libraries have included a particular API named Windows Forms, represented primarily by the System.Windows.Forms.dll assembly. The Windows Forms toolkit provides the types necessary to build desktop graphical user interfaces (GUIs), create custom controls, manage resources (e.g., string tables and icons), and perform other desktop- centric programming tasks. In addition, a separate API named GDI+ (represented by the System.Drawing.dll assembly) provides additional types that allow programmers to generate 2D graphics, interact with networked printers, and manipulate image data. The Windows Forms (and GDI+) APIs remain alive and well within the .NET 4.0 platform, and they will exist within the base class library for quite some time (arguably forever). However, Microsoft has shipped a brand new GUI toolkit called Windows Presentation Foundation (WPF) since the release of .NET 3.0. As you saw in Chapters 27-31, WPF provides a massive amount of horsepower that you can use to build bleeding-edge user interfaces, and it has become the preferred desktop API for today’s .NET graphical user interfaces. The point of this appendix, however, is to provide a tour of the traditional Windows Forms API. One reason it is helpful to understand the original programming model: you can find many existing Windows Forms applications out there that will need to be maintained for some time to come. Also, many desktop GUIs simply might not require the horsepower offered by WPF.
    [Show full text]
  • Vmware Carbon Black Cloud User Guide
    VMware Carbon Black Cloud User Guide Modified on 17 September 2021 VMware Carbon Black Cloud VMware Carbon Black Cloud User Guide You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ VMware, Inc. 3401 Hillview Ave. Palo Alto, CA 94304 www.vmware.com © Copyright 2011-2021 VMware, Inc. All rights reserved. Copyright and trademark information. VMware, Inc. 2 Contents Preface 9 Related Documentation 9 Copyrights and notices 10 Contacting VMware Carbon Black Support 13 1 Dashboard 14 Widget Definitions List 14 Customizing the Dashboard 16 Export Data 17 2 Alerts 18 View Alert Details 18 Alert Types 19 Alert and Report Severity 20 Alert ID, Event ID, and Threat ID 21 Group Alerts 21 Dismissing Alerts 22 Search Basics 23 Alert Triage 24 Investigating Alerts 24 True and False Positives 25 Take Action on Alerts 26 Visualizing Alerts 26 Alert Origin, Behaviors, and TTPs 27 3 Investigate 29 Investigate - Processes 30 Process Analysis 31 Investigate - Enriched Events 33 Investigating Script-Based Attacks 35 Add Query to Threat Report 37 4 Live Query 39 Run a Live Query 39 View Query Results 40 5 Enforce 42 Managing Watchlists 42 VMware, Inc. 3 VMware Carbon Black Cloud User Guide Subscribe to a Curated Watchlist 42 Watchlist Alert Options 43 Build Custom Watchlists 43 Tuning Your Watchlists 44 Tune Your Watchlist at the Report Level 44 Tune Your Report at the IOC Level 44 Managing Policies 44 Predefined Policies 45 Creating Policies 45 Set a Ransomware Policy Rule 46 General Policy Settings 47
    [Show full text]
  • Microsoft / Vcpkg
    Microsoft / vcpkg master vcpkg / ports / Create new file Find file History Fetching latest commit… .. abseil [abseil][aws-sdk-cpp][breakpad][chakracore][cimg][date][exiv2][libzip… Apr 13, 2018 ace Update to ACE 6.4.7 (#3059) Mar 19, 2018 alac-decoder [alac-decoder] Fix x64 Mar 7, 2018 alac [ports] Mark several ports as unbuildable on UWP Nov 26, 2017 alembic [alembic] update to 1.7.7 Mar 25, 2018 allegro5 [many ports] Updates to latest Nov 30, 2017 anax [anax] Use vcpkg_from_github(). Add missing vcpkg_copy_pdbs() Sep 25, 2017 angle [angle] Add CMake package with modules. (#2223) Nov 20, 2017 antlr4 [ports] Mark several ports as unbuildable on UWP Nov 26, 2017 apr-util vcpkg_configure_cmake (and _meson) now embed debug symbols within sta… Sep 9, 2017 apr [ports] Mark several ports as unbuildable on UWP Nov 26, 2017 arb [arb] prefer ninja Nov 26, 2017 args [args] Fix hash Feb 24, 2018 armadillo add armadillo (#2954) Mar 8, 2018 arrow Update downstream libraries to use modularized boost Dec 19, 2017 asio [asio] Avoid boost dependency by always specifying ASIO_STANDALONE Apr 6, 2018 asmjit [asmjit] init Jan 29, 2018 assimp [assimp] Fixup: add missing patchfile Dec 21, 2017 atk [glib][atk] Disable static builds, fix generation to happen outside t… Mar 5, 2018 atkmm [vcpkg-build-msbuild] Add option to use vcpkg's integration. Fixes #891… Mar 21, 2018 atlmfc [atlmfc] Add dummy port to detect atl presence in VS Apr 23, 2017 aubio [aubio] Fix missing required dependencies Mar 27, 2018 aurora Added aurora as independant portfile Jun 21, 2017 avro-c
    [Show full text]
  • Discovering Ironpython
    PART I Introducing IronPython ⊲⊲ CHAPTER 1: Discovering IronPython ⊲⊲ CHAPTER 2: Understanding the IronPython Basics COPYRIGHTED MATERIAL 548592c01.indd 1 2/24/10 12:47:07 PM 548592c01.indd 2 2/24/10 12:47:08 PM 1 Discovering IronPython WHAT’S IN THIS CHAPTER? ➤➤ Understanding why you want to add IronPython to your developer toolbox ➤➤ Obtaining and installing IronPython on your machine ➤➤ Understanding some underlying basics of how IronPython works ➤➤ Using IronPython at the console and within a window ➤➤ Designing and building a simple application IronPython: It sounds like some kind of metal snake infesting your computer, but it isn’t. IronPython is the .NET version of the open source Python language (http://www .python.org/). Python is a dynamic language that can greatly enhance your programming experience, help you create applications in less time, and make the applications you create significantly more responsive to user needs. Of course, you’ve heard these promises before from other languages. This chapter helps you understand how IronPython delivers on these promises in specific situations. The smart developer soon learns that every language serves specific needs and might not work well in others. So this chapter isn’t here to blow smoke at you — ​once you complete it, you’ll understand the strengths and weaknesses of IronPython. Of course, you’ll need to obtain a copy of IronPython before you can use it because Visual Studio doesn’t include IronPython as part of the default installation. This chapter helps you get IronPython installed on your system and tells you about some options you may want to install as well.
    [Show full text]
  • NET Hacking & In-Memory Malware
    .NET Hacking & In-Memory Malware Shawn Edwards Shawn Edwards Cyber Adversarial Engineer The MITRE Corporation Hacker Maker Learner Take stuff apart. Change it. Put Motivated by an incessant Devoted to a continuous effort it back together. desire to create and craft. of learning and sharing knowledge. Red teamer. Adversary Numerous personal and emulator. professional projects. B.S. in Computer Science. Adversary Emulation @ MITRE • Red teaming, but specific threat actors • Use open-source knowledge of their TTPs to emulate their behavior and operations • Ensures techniques are accurate to real world • ATT&CK (Adversarial Tactics Techniques and Common Knowledge) • Public wiki of real-world adversary TTPs, software, and groups • CALDERA • Modular Automated Adversary Emulation framework Adversary Emulation @ MITRE • ATT&CK • Adversarial Tactics Techniques and Common Knowledge • Public wiki of real-world adversary TTPs, software, and groups • Lets blue team and red team speak in the same language • CALDERA • Modular Automated Adversary Emulation framework • Adversary Mode: • AI-driven “red team in a box” • Atomic Mode: • Define Adversaries, give them abilities, run operations. Customize everything at will. In-Memory Malware • Is not new • Process Injection has been around for a long time • Typically thought of as advanced tradecraft; not really • Surged in popularity recently • Made easier by open-source or commercial red team tools • For this talk, only discuss Windows malware • When relevant, will include the ATT&CK Technique ID In-Memory
    [Show full text]
  • Cake Documentation Release 0.1.21
    Cake Documentation Release 0.1.21 Patrik Svensson January 27, 2015 Contents 1 User documentation 3 1.1 Introduction...............................................3 1.2 How does it work?............................................3 1.3 Getting started..............................................5 1.4 Extensibility...............................................7 1.5 Contributors...............................................7 1.6 Contribution Guidelines.........................................8 1.7 AppVeyor integration..........................................9 2 Api documentation 13 2.1 API documentation............................................ 13 i ii Cake Documentation, Release 0.1.21 Cake (C# Make) is a build automation system with a C# DSL to do things like compiling code, copy files/folders, running unit tests, compress files and build NuGet packages. • GitHub: https://github.com/cake-build/cake • NuGet: https://www.nuget.org/packages/Cake Contents 1 Cake Documentation, Release 0.1.21 2 Contents CHAPTER 1 User documentation 1.1 Introduction 1.1.1 What is Cake? Cake is a build automation system with a C# DSL to do things like compiling code, copy files/folders, running unit tests, compress files and build NuGet packages. 1.1.2 Goals The goal of Cake is to be a first class alternative to those who want to write their build scripts in C# instead of Ruby, F# or Powershell. 1.2 How does it work? Cake uses a dependency based programming model just like Rake, FAKE and similar build automation systems where you declare tasks and the dependencies between those. 1.2.1 Tasks To define a new task, use the Task-method. Task("A") .Does(() => { }); RunTarget("A"); 1.2.2 Dependencies To add a dependency on another task, use the IsDependentOn-method. 3 Cake Documentation, Release 0.1.21 Task("A") .Does(() => { }); Task("B") .IsDependentOn("A"); .Does(() => { }); RunTarget("B"); This will first execute target A and then B as expected.
    [Show full text]
  • MEMOIRE DE FIN D'etudes En Vue De L'obtention Du DIPLOME De Licence Ès Sciences Techniques DEVELOPPEMENT D'un LOGICIEL DE
    N° d’ordre : 07/L3/TCO Année Universitaire : 2010 / 2011 UNIVERSITE D’ANTANANARIVO ---------------------- ECOLE SUPERIEURE POLYTECHNIQUE ----------------------- DEPARTEMENT TELECOMMUNICATION MEMOIRE DE FIN D’ETUDES en vue de l’obtention du DIPLOME de Licence ès sciences techniques Spécialité : Télécommunication par : RADIASON Tsiry Andriamampianina DEVELOPPEMENT D’UN LOGICIEL DE MESSAGERIE INSTANTANEE AVEC UN MODULE DE CRYPTAGE DE MESSAGE Soutenu le 20 Juillet 2012 Président : M. RAKOTOMALALA Mamy Alain Examinateurs : M. RAKOTONDRAINA Tahina Ezéchiel Mme. ANDRIANTSILAVO Haja Samiarivonjy Mme. RAMAFIARISONA Malalatiana Directeur de mémoire : Monsieur RAVONIMANANTSOA Ndaohialy Manda-Vy TABLE DES MATIERES TABLE DES MATIERES .................................................................................................................... i LISTE DES FIGURES........................................................................................................................ iv TABLE DES ABREVIATIONS ......................................................................................................... vi REMERCIEMENT ............................................................................................................................. x INTRODUCTION GENERALE ........................................................................................................ 1 CHAPITRE 1 GENERALITE ............................................................................................................ 3 1. Presentation du protocole SIP ................................................................................................
    [Show full text]