eclipse for remote development presented by taye su

22
Eclipse for remote development Presented by Taye Su

Upload: hedwig

Post on 03-Feb-2016

28 views

Category:

Documents


0 download

DESCRIPTION

Eclipse for remote development Presented by Taye Su. Agenda. Theory of Operation Workflows Install & Configure New Project Build Edit SCM Debug Q&A. overview. Global development (US, India, Singapore, China) Large C++ codebase Linux OS specific. Theory of operation. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Eclipse for remote  development Presented by Taye Su

Eclipse for remote developmentPresented by

Taye Su

Page 2: Eclipse for remote  development Presented by Taye Su

Agenda

• Theory of Operation

• Workflows• Install & Configure• New Project• Build• Edit• SCM• Debug

• Q&A

2

Page 3: Eclipse for remote  development Presented by Taye Su

overview

• Global development (US, India, Singapore, China)

• Large C++ codebase

• Linux OS specific

3

Page 4: Eclipse for remote  development Presented by Taye Su

Theory of operation• Classical Development

4

Page 5: Eclipse for remote  development Presented by Taye Su

Pain points

• Inconsistence dev environment

• SlickEdit Dev has own hooks and hard to share

• X-Client doesn’t work well for remote users

• Error prone - typing errors to code

• Difficult to trace compiling error

• Manual debugging

• difficult to setup

• difficult to step through code with gdb commands

• gdb is too expensive to run on staging machine

5

Page 6: Eclipse for remote  development Presented by Taye Su

Solutions for remote development

6

Page 7: Eclipse for remote  development Presented by Taye Su

Introduction

• PC, Linux and Macintosh versions

• Eclipse enhanced for PayPal developers• Ability to edit/build remotely

• Ability to debug remotely

7

Page 8: Eclipse for remote  development Presented by Taye Su

Theory of operation

• Rsync Project

8

Page 9: Eclipse for remote  development Presented by Taye Su

Theory of operation

Rsync Variants for local editing & indexing• Basic Rsync

• Manual Rsync

• Offline Rsync

9

Page 10: Eclipse for remote  development Presented by Taye Su

Benefits

• Inherited all Eclipse plugin features.

• Graphical remote debugging

• Speediness / responsiveness for remote users

• Consistent development environment

10

Page 11: Eclipse for remote  development Presented by Taye Su

Workflows

11

Page 12: Eclipse for remote  development Presented by Taye Su

Workflows – Remote Debugging

• Remote Debug Wizard makes debugging easy

• Debug Steps:• Build Application With Symbols

• Deploy to playground or stage

• Set Breakpoints

• Run the Debug Wizard

• Types of Applications

• Standalone – launched by gdb

• WAC App – launched by Apache, connects via gdbserver

• Service – attach to running process

12

Page 13: Eclipse for remote  development Presented by Taye Su

Standalone Application Debugging

13

executable

IDE gdblaunches

launches

dev staging

Page 14: Eclipse for remote  development Presented by Taye Su

WEB Application

14

apache

IDE debug.cdbplaces

dev staging

Page 15: Eclipse for remote  development Presented by Taye Su

WEB Application

15

apache

IDE debug.cdbhttp request

webapp

launches

gdbserver

launches

dev staging

Page 16: Eclipse for remote  development Presented by Taye Su

WEB Application

16

apache

webapp

gdbserver

IDE

attaches

dev staging

Page 17: Eclipse for remote  development Presented by Taye Su

WEB Application

17

apache

webapp

gdbserver

gdbIDElaunches

connects

controls

dev staging

Page 18: Eclipse for remote  development Presented by Taye Su

Service/Daemon Debugging

18

asfhelloserv

gdbIDElaunches

attaches

dev staging

Page 19: Eclipse for remote  development Presented by Taye Su

Service/Daemon Debugging

19

asfhelloclient

asfhelloserv

gdbcoronacontrols

controls

messages

dev staging

Page 20: Eclipse for remote  development Presented by Taye Su

Future works

• Open Source

• RSYNC project creation

• Remote debugging

• Import project base on makefile (hello.exe_def)

• Deploy app

Page 21: Eclipse for remote  development Presented by Taye Su
Page 22: Eclipse for remote  development Presented by Taye Su

Evaluate This Session

Sign-in: www.eclipsecon.org

Select session from schedule

Evaluate:

1

2

3