Search Results

Search found 89614 results on 3585 pages for 'code analysis'.

Page 569/3585 | < Previous Page | 565 566 567 568 569 570 571 572 573 574 575 576  | Next Page >

  • Google I/O 2012 - Monetizing Digital Goods with Google Wallet

    Google I/O 2012 - Monetizing Digital Goods with Google Wallet Joel Leitch, Dan Zink, Pali Bhat Whether you're a game developer selling virtual goods or currencies, or a media developer selling news content, videos, music or any other premium digital media, having an simple way to process payments from your customers is important. In this session, we will walk through an explanation of Google Wallet for digital goods, the new features, and the improved pricing model for developers. In addition, Kabam will share their experience with Google Wallet and best practices for integration. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 307 13 ratings Time: 44:31 More in Science & Technology

    Read the article

  • Updating an Entity through a Service

    - by GeorgeK
    I'm separating my software into three main layers (maybe tiers would be a better term): Presentation ('Views') Business logic ('Services' and 'Repositories') Data access ('Entities' (e.g. ActiveRecords)) What do I have now? In Presentation, I use read-only access to Entities, returned from Repositories or Services, to display data. $banks = $banksRegistryService->getBanksRepository()->getBanksByCity( $city ); $banksViewModel = new PaginatedList( $banks ); // some way to display banks; // example, not real code I find this approach quite efficient in terms of performance and code maintanability and still safe as long as all write operations (create, update, delete) are preformed through a Service: namespace Service\BankRegistry; use Service\AbstractDatabaseService; use Service\IBankRegistryService; use Model\BankRegistry\Bank; class Service extends AbstractDatabaseService implements IBankRegistryService { /** * Registers a new Bank * * @param string $name Bank's name * @param string $bik Bank's Identification Code * @param string $correspondent_account Bank's correspondent account * * @return Bank */ public function registerBank( $name, $bik, $correspondent_account ) { $bank = new Bank(); $bank -> setName( $name ) -> setBik( $bik ) -> setCorrespondentAccount( $correspondent_account ); if( null === $this->getBanksRepository()->getDefaultBank() ) $this->setDefaultBank( $bank ); $this->getEntityManager()->persist( $bank ); return $bank; } /** * Makes the $bank system's default bank * * @param Bank $bank * @return IBankRegistryService */ public function setDefaultBank( Bank $bank ) { $default_bank = $this->getBanksRepository()->getDefaultBank(); if( null !== $default_bank ) $default_bank->setDefault( false ); $bank->setDefault( true ); return $this; } } Where am I stuck? I'm struggling about how to update certain fields in Bank Entity. Bad solution #1: Making a series of setters in Service for each setter in Bank; - seems to be quite reduntant, increases Service interface complexity and proportionally decreases it's simplicity - something to avoid if you care about code maitainability. I try to follow KISS and DRY principles. Bad solution #2: Modifying Bank directly through it's native setters; - really bad. If you'll ever need to move modification into the Service, it will be pain. Business logic should remain in Business logic layer. Plus, there are plans on logging all of the actions and maybe even involve user permissions (perhaps, through decorators) in future, so all modifications should be made only through the Service. Possible good solution: Creating an updateBank( Bank $bank, $array_of_fields_to_update) method; - makes the interface as simple as possible, but there is a problem: one should not try to manually set isDefault flag on a Bank, this operation should be performed through setDefaultBank method. It gets even worse when you have relations that you don't want to be directly modified. Of course, you can just limit the fields that can be modified by this method, but how do you tell method's user what they can and cannot modify? Exceptions?

    Read the article

  • Google Top Geek E07

    Google Top Geek E07 In Spanish! Noticias: 1. Gráfico de conocimiento ahora en español y varios idiomas más. Totalmente localizado. 2. Nueva versión de Snapseed para iOS y Android. Gmail para Android y la versión 2.0 para iOS. Nuevo estilo para YouTube. 3. 500Millones de usuarios en Google+ y una nueva característica: comunidades. Las búsquedas de la semana y lo más visto en YouTube. Recomendamos Picket, una app para Android que funciona en México y te da la cartelera en cines. Noticias para desarrolladores: 1. Mejores mapas para apps de Android, nuevo API. 2. Una imagen dice más que mil palabras: Place Photos y Radar Search Ligas y más información en el blog: programa-con-google.blogspot.com From: GoogleDevelopers Views: 80 11 ratings Time: 18:09 More in Science & Technology

    Read the article

  • Google I/O 2012 - Building Android Applications that Use Web APIs

    Google I/O 2012 - Building Android Applications that Use Web APIs Yaniv Inbar Google offers a large and growing set of back-end services, from AdSense to Tasks to Calendar to Google+, that can enrich your app, and increasingly they have a uniform set of APIs. This session discusses how to use them efficiently and securely, including authenticating safely and with good user experience, and describes Android-specific app-level optimizations. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 563 12 ratings Time: 55:14 More in Science & Technology

    Read the article

  • How to Banish Duplicate Photos with VisiPic

    - by Jason Fitzpatrick
    You meant well, you intended to be a good file custodian, but somewhere along the way things got out of hand and you’ve got duplicate photos galore. Don’t be afraid to delete them and lose important photos, read on as we show you how to clean safely. Deleting duplicate files, especially important ones like personal photos, makes a lot of people quite anxious (and rightfully so). Nobody wants to be the one to realize that they deleted all the photos of their child’s first birthday party during a hard drive purge gone wrong. In this tutorial we’re going to show you how to go beyond the limited reach of  tools which simply compare file names and file sizes. Instead we’ll be using a program that combines that kind of comparison with actual image analysis to help you weed out not just perfect 1:1 file duplicates but also those piles of resized for email images, cropped images, and other modified images that might be cluttering up your hard drive. How to Banish Duplicate Photos with VisiPic How to Make Your Laptop Choose a Wired Connection Instead of Wireless HTG Explains: What Is Two-Factor Authentication and Should I Be Using It?

    Read the article

  • Zune API Library for Ruby

    - by kerry
    Those of you who know me, know my favorite music player is the Zune. For some reason it seems most of my spare time lately seems to be creating Zune API libraries for different languages (I have a PHP one as well).  Here’s another one for Ruby!  If you use it, let me know.  I would love to hear what people are working on. It’s hosted at github, and very easy to use. zune_card = Zune::ZuneCard.for('a_zune_tag') Checkout the README for deets on what fields the object will have.

    Read the article

  • Google I/O 2012 - Measuring the End-to-End Value of Your App

    Google I/O 2012 - Measuring the End-to-End Value of Your App Neil Rhodes, Nick Mihailovski, Mike Kwong We've rethought mobile app analytics from the ground up. If you are a mobile app developer, come see what's new from the land of Google Analytics; Understand how to measure the end-to-end value of your app, and improve its performance to drive usage and retention. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 69 4 ratings Time: 01:04:12 More in Science & Technology

    Read the article

  • Google I/O 2012 - Deep Dive into the Next Version of the Google Drive API

    Google I/O 2012 - Deep Dive into the Next Version of the Google Drive API Ali Afshar, Ivan Lee This session discusses a number of best practices with the new Google Drive API. We'll cover how to properly sync files, how to manage sharing, and how to make your applications faster and more efficient than ever before. We'll go through an entire working application that exposes best practices. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 17 0 ratings Time: 45:50 More in Science & Technology

    Read the article

  • Google I/O 2012 - Dart - A Modern Web Language

    Google I/O 2012 - Dart - A Modern Web Language Lars Bak, Kasper Lund The two creators of Dart will discuss the rationale behind Dart's design and its impact on web scalability and performance. They'll also present how Dart helps developers innovate by increasing their productivity without breaking backwards compatibility. For all I/O 2012 sessions, go to developers.google.com From: GoogleDevelopers Views: 2066 36 ratings Time: 01:03:40 More in Science & Technology

    Read the article

  • Throwing exception from a property when my object state is invalid

    - by Rumi P.
    Microsoft guidelines say: "Avoid throwing exceptions from property getters", and I normally follow that. But my application uses Linq2SQL, and there is the case where my object can be in invalid state because somebody or something wrote nonsense into the database. Consider this toy example: [Table(Name="Rectangle")] public class Rectangle { [Column(Name="ID", IsPrimaryKey = true, IsDbGenerated = true)] public int ID {get; set;} [Column(Name="firstSide")] public double firstSide {get; set;} [Column(Name="secondSide")] public double secondSide {get; set;} public double sideRatio { get { return firstSide/secondSide; } } } Here, I could write code which ensures that my application never writes a Rectangle with a zero-length side into the database. But no matter how bulletproof I make my own code, somebody could open the database with a different application and create an invalid Rectangle, especially one with a 0 for secondSide. (For this example, please forget that it is possible to design the database in a way such that writing a side length of zero into the rectangle table is impossible; my domain model is very complex and there are constraints on model state which cannot be expressed in a relational database). So, the solution I am gravitating to is to change the getter to: get { if(firstSide > 0 && secondSide > 0) return firstSide/secondSide; else throw new System.InvalidOperationException("All rectangle sides should have a positive length"); } The reasoning behind not throwing exceptions from properties is that programmers should be able to use them without having to make precautions about catching and handling them them. But in this case, I think that it is OK to continue to use this property without such precautions: if the exception is thrown because my application wrote a non-zero rectangle side into the database, then this is a serious bug. It cannot and shouldn't be handled in the application, but there should be code which prevents it. It is good that the exception is visibly thrown, because that way the bug is caught. if the exception is thrown because a different application changed the data in the database, then handling it is outside of the scope of my application. So I can't do anything about it if I catch it. Is this a good enough reasoning to get over the "avoid" part of the guideline and throw the exception? Or should I turn it into a method after all? Note that in the real code, the properties which can have an invalid state feel less like the result of a calculation, so they are "natural" properties, not methods.

    Read the article

< Previous Page | 565 566 567 568 569 570 571 572 573 574 575 576  | Next Page >