Search Criteria:
- Modalidad
- Compensación
- Tipo de compañía
- Tecnologías
| <?xml version="1.0" encoding="UTF-8"?> | |
| <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | |
| <plist version="1.0"> | |
| <dict> | |
| <key>AlternateMouseScroll</key> | |
| <true/> | |
| <key>AppleAntiAliasingThreshold</key> | |
| <integer>1</integer> | |
| <key>ApplePressAndHoldEnabled</key> | |
| <false/> |
| # Adaptee | |
| class Hammer | |
| def swing | |
| 'swing' | |
| end | |
| end | |
| # Target | |
| class Tool | |
| def initialize(adapter) |
| # Violates DIP | |
| class InvoiceNotifier | |
| def initialize(invoice) | |
| @invoice = invoice | |
| end | |
| def mail_notification | |
| InvoiceMailer.new.send(@invoice) | |
| end |
| # Violates ISP | |
| class Airplane | |
| def load_luggage | |
| end | |
| def load_fuel | |
| end | |
| def take_off | |
| end |
| # Violates LSP | |
| class Company | |
| def hire_people | |
| expand_the_team | |
| end | |
| def open_new_location | |
| create_a_new_office | |
| end |
| # Violates OCP | |
| class InvoiceNotifier | |
| def initialize(invoice) | |
| @invoice = invoice | |
| end | |
| def notify(channel) | |
| case channel | |
| when 'email' | |
| send_email |
| # Violates SRP | |
| class Invoice | |
| def initialize(items, client) | |
| @items = items | |
| @client = client | |
| @total = 0 | |
| end | |
| def generate |
| require 'minitest/autorun' | |
| # Problem | |
| # https://softwareengineering.stackexchange.com/questions/153806/conflict-resolution-for-two-way-sync | |
| # interface DB { | |
| # String Get(String) | |
| # void Set(String, String) | |
| # []String Keys() | |
| # |